【问题标题】:QueryDSL-maven-You need to run build with JDK or have tools.jar on the classpathQueryDSL-maven-需要用JDK运行构建或者classpath上有tools.jar
【发布时间】:2017-06-02 07:00:31
【问题描述】:

我也有类似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

谁能帮帮我?

【问题讨论】:

  • 执行 mvn clean install 后,我将 tools.jarC:\Program Files\Java\jdk1.8.0_151\lib 复制到 C:\Program Files\Java\jre1.8.0_151\lib

标签: java eclipse maven querydsl


【解决方案1】:

我终于做到了!我尝试了很多选项,例如thisthis,但没有运气。然后我读到这条挽救了我生命的评论,真的,谢谢!我遵循此解决方案及其突然工作!在我的情况下应该被接受。

在我执行 mvn clean install 之后,我将 tools.jar 从 C:\Program Files\Java\jdk1.8.0_151\lib 复制到 C:\Program Files\Java\jre1.8.0_151\lib – @julio mulcue burbano

【讨论】:

  • 我尝试使用 .ini 文件更改它不起作用。最后你的解决方案奏效了。谢谢。
【解决方案2】:

如果是 STS,请在您的 eclipse.iniSTS.ini 中包含以下行,

-vm {path_to_jdk}\jdk{your_version}\bin\javaw.exe

更多信息issue

【讨论】:

  • -vm 选项必须出现在 -vmargs 选项之前
【解决方案3】:

最后,我把它卖掉了。原因是我的电脑上同时安装了JDK1.7和JDK1.8,当我在cmd中运行java -version时,出现以下错误:

 Registry key 'Software\JavaSoft\Java Runtime Environment'\CurrentVersion' has value '1.8', but '1.7' is required

我删除了 1.7 和 1.8,重新安装 1.8,一切都很好。我生成了 QClass。

我太傻了……

【讨论】:

    猜你喜欢
    • 2015-02-21
    • 2018-03-17
    • 2023-03-10
    • 2014-08-20
    • 1970-01-01
    • 2020-11-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多