我有同样的问题,如this,我已经尝试了两种解决方案,但没有一个适合我。
我从它的github页面复制了querydsl的配置。
所以我的querydsl maven依赖关系:
<dependency>
<groupId>com.querydsl</groupId>
<artifactId>querydsl-jpa</artifactId>
<version>4.1.4</version>
</dependency>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-log4j12</artifactId>
<version>1.6.1</version>
</dependency>
还有我的apt配置:
<plugin>
<groupId>com.mysema.maven</groupId>
<artifactId>apt-maven-plugin</artifactId>
<version>1.1.3</version>
<executions>
<execution>
<goals>
<goal>process</goal>
</goals>
<configuration>
<outputDirectory>target/generated-sources/java</outputDirectory>
<processor>com.querydsl.apt.jpa.JPAAnnotationProcessor</processor>
</configuration>
</execution>
</executions>
<dependencies>
<dependency>
<groupId>com.querydsl</groupId>
<artifactId>querydsl-apt</artifactId>
<version>4.1.4</version>
</dependency>
</dependencies>
</plugin>
我还修改了eclipse.ini,在第一行添加了以下内容:
-vm
D:\Program Files\Java\jdk1.8.0_91\bin\javaw.exe
但我在eclipse中也得到同样的错误:
You need to run build with JDK or have tools.jar on the classpath.If this occures during eclipse build make sure you run eclipse under JDK as well (com.mysema.maven:apt-maven-plugin:1.1.3:process:default:generate-sources)
当我在cmd中运行mvn genarate-sources
时,出现了同样的错误:
[INFO] --- apt-maven-plugin:1.1.3:process (default)
[ERROR] execute error
org.apache.maven.plugin.MojoExecutionException: You need to run build with JDK or have tools.jar on the classpath.If this occures during eclipse build make sure you run eclipse under JDK as well
有人能帮我吗?
3条答案
按热度按时间v9tzhpje1#
如果是STS,请在
eclipse.ini
或STS.ini
中包含以下行,-vm {path_to_jdk}\jdk{your_version}\bin\javaw.exe
更多信息issue
u0sqgete2#
我终于做到了!我已经尝试了这么多的选项,如this和this,但没有运气。然后我读了这条评论,救了我的命,真的,谢谢你!我遵循这个解决方案,它的工作突然!应该接受我的情况下的答案。
在我执行mvn全新安装- @julio mulcue urbano之后,我将tools.jar从C:\Program Files\Java\jdk1.8.0_151\lib复制到C:\Program Files\Java\jre1.8.0_151\lib
q1qsirdb3#
最后,我解决了这个问题。原因是我的电脑上安装了JDK1.7和JDK1.8,当我在cmd中运行
java -version
时,出现了以下错误:我删除了1.7和1.8,重新安装1.8,一切都很好。我得到了QClass genarated。
我真笨...