找不到tools.jar在Mac OSX中反映原生Android

时间:2016-09-24 18:37:48

标签: android macos react-native java-home

我走到了这一步:

reactive-native run-android ; 

当我运行echo $JAVA_HOME时,我获得了JDK目录的完整路径:

/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home

我将该路径添加到./android/gradle.properties

org.gradle.java.home=/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/

我得到了同样的错误:

  

..... ....:app:generateDebugSources UP-TO-DATE   :app:processDebugJavaRes UP-TO-DATE:app:compileDebugJavaWithJavac   FAILED

     

失败:构建因异常而失败。

     
      
  • 出了什么问题:任务执行失败':app:compileDebugJavaWithJavac'。

         
        

    无法找到tools.jar

      
  •   
  • 尝试:使用--stacktrace选项运行以获取堆栈跟踪。使用--info或--debug选项运行以获得更多日志输出。

  •   
     

.....

3 个答案:

答案 0 :(得分:1)

您应该下载JDK,完成安装并将lib的路径添加到PATH。就我而言:

/Library/Java/JavaVirtualMachines/jdk1.8.0_112.jdk/Contents/Home/lib

它与bin处于同一级别,即:

/Library/Java/JavaVirtualMachines/jdk1.8.0_112.jdk/Contents/Home/bin

答案 1 :(得分:0)

我遇到了同样的问题。我的java路径错了。

以前我使用' / Library / Internet Plug-Ins / JavaAppletPlugin.plugin / Contents / Home / bin / java'

我改为'〜/ Library / Internet Plug-Ins / JavaAppletPlugin.plugin / Contents / Home / bin / java'

现在问题已经解决了。

答案 2 :(得分:0)

当一些 react-native 的插件如 masked-view 无法在你的机器中找到 JDK 主库目录中存在的 tools.jar 路径时,会弹出这个错误。

关于这个问题,您所做的几乎是正确的,但是您添加了不正确的 Internet Plugins 路径。你必须添加你机器的jdk路径。

定位JDK路径:

如果您的 JAVA_HOME 变量存在,那么您可以使用终端直接找到 vim .zshrc 或 vim .bashrc 命令,其中必须存在类似于 /Library/Java/JavaVirtualMachines/jdk1.8.0_231.jdk{Your Machine JDK Version}/Contents/Home (复制此 JAVA_HOME 路径)

获取JDK的路径后,在gradle.properties文件的android文件夹下添加这一行

org.gradle.java.home=/Library/Java/JavaVirtualMachines/jdk1.8.0_231.jdk{"REPLACE_IT_WITH_YOUR_JDK_VERSION"}/Contents/Home

希望这对您或其他人有所帮助!

谢谢:)