摇篮没有找到的tools.jar摇篮没有找到的tools.jar(Gradle does not f

2019-06-14 15:14发布

我用的Javadoc的doclet与gradle这个,所以我需要使用软件包的tools.jar,这是从JDK(在我的情况1.6.0_26)lib文件夹。

问题的关键是,gradle这个不会自动拍摄,所以我补充说,工具包,以我的库文件夹,然后将其添加到dependencies.gradle。

现在,我希望把它直接从我的JDK家到我dependencies.gradle。 有没有办法做到这一点? 我试图在我的dependencies.gradle了下:

compile files("${System.properties['java.home']}/lib/tools.jar")

但是在编译时它没有找到它。

Answer 1:

我有这个问题,当我试图通过CLI运行命令。

正是有了系统看JRE文件夹,即一个问题D:\Program Files\Java\jre8\bin 。 如果我们在那里看,没有Tools.jar ,因此错误。

你需要找到的JDK是,在我的情况: D:\Program Files\Java\jdk1.8.0_11 ,如果你在看lib目录,你会看到Tools.jar

我所做的我创建了一个新的环境变量JAVA_HOME

然后你需要编辑PATH变量,包括JAVA_HOME,即%JAVA_HOME%/bin;

重新打开命令提示符窗口,应运行。



Answer 2:

找到了。 系统属性“java.home”不是JAVA_HOME环境变量。 JAVA_HOME指向JDK,而java.home指向JRE。 请参阅该网页以获取更多信息。

洙......我的问题是,我的启动点是JRE文件夹(C:\ jdk1.6.0_26 \ JRE),而不是JDK文件夹(C:\ jdk1.6.0_26),因为我想(的tools.jar是关于C :\ jdk1.6.0_26 \ lib文件夹)。 在dependencies.gradle编译行应该是:

compile files("${System.properties['java.home']}/../lib/tools.jar")


Answer 3:

我使用Eclipse试图执行一个摇篮任务得到了同样的错误。 我每次运行一个命令(即战争)的过程中抛出一个异常,如:

找不到tools.jar中。 请检查C:\ Program Files文件\的Java \ Jre8" 是一个有效JDK安装。

我想在这篇文章中列出的解决方案,但没有人解决了这个问题。 在这里我的解决方案:

  1. 转到“摇篮任务”视图
  2. 右键点击任务要执行
  3. 选择打开摇篮运行配置
  4. 在选项卡中的“Java主页”选择本地JDK库,然后单击确定

再次运行,享受!



Answer 4:

我只是增加了一个gradle.properties有以下内容的文件:

org.gradle.java.home=C:\\Program Files\\Java\\jdk1.8.0_45


Answer 5:

我使用Ubuntu类似的情况。 仅安装了JRE的机器了。 所以,我只是执行以下命令来安装JDK。

sudo apt install openjdk-8-jdk



Answer 6:

我挣扎,以及该解决方案。 找到一个更好的方法将其与摇篮描述这里 。 我们可以从摇篮本身的JVM / JDK的信息。

dependencies {
   runtime files(org.gradle.internal.jvm.Jvm.current().toolsJar)
}

很简单。



Answer 7:

这种加入gradle.properties

org.gradle.java.home = C:\ Program Files文件\的Java \ jdk1.8.0_91



Answer 8:

在CentOS7开发包将安装的tools.jar。 该文件中不存在的java-1.8.0-的OpenJDK

sudo yum install java-1.8.0-openjdk-devel



Answer 9:

这可能需要两年为时已晚,但我遇到了最近同样的问题,这是我结束了之后发现解决这个帖子 :

import javax.tools.ToolProvider

dependencies {
  compile (
    files(((URLClassLoader) ToolProvider.getSystemToolClassLoader()).getURLs()),
    ...
  }
}

它应该工作,如果java.home指向一个目录的JDK目录下,甚至在Mac OS上,你不得不classes.jar代替的tools.jar不是。



Answer 10:

在Windows 10,我遇到了同样的问题,这个我是如何解决这个问题;

  1. 进入Advance System Settings>Environment Variables>System Variables
  2. 选择路径覆盖默认的C:\ProgramData\Oracle\Java\javapath
  3. 用自己的jdk安装即JAVA_HOME = C:\Program Files\Java\jdk1.8.0_162


Answer 11:

在我的系统(10场,JRE 1.8.0,Android的工作室3.1.2,摇篮4.1)不存在tools.jar JRE目录( C:\Program Files\Java\jre1.8.0_171 )。

然而,我发现它在C:\Program Files\Android\Android Studio\jre\lib ,并试图设置JAVA_HOME=C:\Program Files\Android\Android Studio\jre

这对我行得通)!



Answer 12:

Linux的

打开/etc/environment纳米或者gedit中 ,并添加以下行任何文本编辑器:

JAVA_HOME="/usr/lib/jvm/open-jdk"

视窗

  1. 启动系统控制面板小程序(开始 - 设置 - 控制面板 - 系统)。
  2. 选择高级选项卡。
  3. 单击环境变量按钮。
  4. 在系统变量,单击Add按钮,然后经过以下几行:

    在变量名: JAVA_HOME

    在变量值: C:\Program Files\Java\jdk1.x.x_xxx

    其中x.x_xxx JDK版本,你可以从这里得到你的JDK版本C:\Program Files\Java

  5. 在系统变量中,选择路径,然后单击编辑,然后单击新建按钮,然后经过以下行:

    %JAVA_HOME%/bin;



Answer 13:

在CentOS 7,我发现, 只有拥有JDK tools.jar ,而JRE没有 。 我已经安装了Java JRE 8( yum install java-1.8.0-openjdk ),而不是JDK( yum install java-1.8.0-openjdk-devel )。

安装后解决了这个问题。 另外,记得设置JAVA_HOME



Answer 14:

像其他的答案我设置gradle.properties文件org.gradle.java.home财产。 但随着\分离路径没有工作(在Windows 10楼):

通过“org.gradle.java.home”提供的Java家是无效的。 无效的目录:C:程序FilesJavajdk1.8.0_65

因此,而不是

org.gradle.java.home = C:\ Program Files文件\的Java \ jdk1.8.0_65

我不得不使用

org.gradle.java.home = C:/ Program Files文件/的Java / jdk1.8.0_65

那么构建成功

问题是,项目建设有JRE,而不是JDK,因为我是从Eclipse中构建它,这也工作:

  • 在窗口>首选项>摇篮>参数指定工作空间JRE,并指定你的JDK。
  • 在窗口>首选项> Java的> InstalledJREs指定JDK默认


Answer 15:

在我的情况(窗10)的Java更新之后,我失去了我的环境变量,所以我固定再次添加变量,总部设在下面的步骤https://confluence.atlassian.com/doc/setting-the-java_home-variable-in -Windows-8895.html



Answer 16:

你有没有确保的tools.jar使得它的编译类路径? 也许路径不正确。

task debug << {
    configurations.compile.each { println it }
}


Answer 17:

在“打开摇篮运行配置”将JDK路径通过JAVA_HOME标签将解决这个问题。



Answer 18:

这为我工作:

我得到消息

执行失败的任务“:应用程序:compileDebugJavaWithJavac”。

找不到tools.jar中。 请检查C:\ Program Files文件\的Java \ jre1.8.0_121包含一个有效JDK安装。

  • 在Android Studio中,请检查您的SDK位置。
  • 文件,项目结构,SDK位置,JDK的位置。
  • 例如:C:\机器人工作室\机器人工作室\ JRE
  • \ JRE \ lib文件夹\ Android的工作室\ Android的工作室到C:tools.jar文件在C复制\ Program Files文件\的Java \ jre1.8.0_121 \ lib文件夹。
  • 重试。


Answer 19:

如果您使用终端来构建和你有这样的错误,你可以指向JDK在你的Android工作室捆绑gradle.properties文件:

org.gradle.java.home=/usr/local/android-studio/jre


Answer 20:

我试过最顶部的选项,但似乎我有什么毛病我的环境设置,以便他们没有帮助。 什么解决这个问题对我来说是重新安装 jdk1.8.0_201jre1.8.0_201 ,这解决了这个错误我。 希望可以帮助别人。



Answer 21:

我解决这个问题的方法:

  • 上下载文件的工具,1.8.0.jar http://www.java2s.com/Code/Jar/t/Downloadtools180jar.htm
  • 解压缩文件并重新命名为的tools.jar
  • 拷贝到C:\ Program Files文件\的Java \ jre1.8.0_191 \ lib文件夹
  • 重试


文章来源: Gradle does not find tools.jar