当前位置: 首页 > 面试题库 >

为什么Maven忽略了我的JAVA_HOME?

燕志学
2023-03-14
问题内容

这是mvn从CruiseControl执行时得到的:

无法在以下位置找到Javac编译器:
  /usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0.x86_64/jre/../lib/tools.jar
请确保您使用的是JDK 1.4或更高版本,
不是JRE(需要com.sun.tools.javac.Main类)。
在大多数情况下,您可以更改Java的位置
通过设置JAVA_HOME环境变量进行安装。

同时,从命令行启动它可以提供正确的结果。为什么mvn要进入这个tools.jar?为什么忽略了我JAVA_HOME?我该如何解决?

我不知道从CC启动JAVA_HOME/PATHwhen
的值是什么mvn。我真的很想获得这些信息,但我不知道如何。CC本身是从用户开始ccenv该用户给我(这是CentOS的5.4):

JAVA_HOME=/usr/java/default
PATH=/usr/local/maven/bin:/usr/local/bin:/bin:/usr/bin:/home/cc/bin

问题答案:

假设您有一台linux机器。

  1. 看一下/usr/bin/java,这是一个符号链接。查看此符号链接的目标位置(在我的情况下,目标位于此位置/etc/alternatives/java
  2. /etc/alternatives/java也是符号链接。创建指向“适当” JVM(例如Sun的JVM)的新符号链接
  3. 替换/etc/alternatives/java为新创建的符号链接。

这适用于Ubuntu发行版。有一种自动的方法,但是我实际上忘记了:D



 类似资料:
  • 我的JAVA_HOME指向这个JDK的bin文件夹。我的PATH变量中也有相同的bin文件夹。 我的问题是我做错了什么?应该说开发工具包而不是运行时环境吗?

  • 根据我所读到的内容,这是我执行依赖顺序所需要的全部内容。 然后我构建了所有的东西,设置了我的断点,并启动了应用程序。我希望在任何依赖bean之前到达“configData”bean中的断点。事情不是这样的。第一个断点在一个依赖bean的“init”方法中。 然后我更改了“log4j.xml”,将“debug”设置为“org.springframework”的日志级别,并重新运行测试。断点行为是相同

  • 我在JMeter中创建了一个脚本,它从CSV获取登录凭据。 用户名:pshah 密码:欢迎 当我执行脚本时,我可以在POST中看到值: 用户名:pshah 但密码:欢迎 我想知道原因”

  • 见下图。我的.gitignore文件应该忽略src/dist中的所有文件,但事实并非如此。

  • 我对iOS布局约束的机制有误解。请参阅下面列出的我放在viewDidLoad中的代码。 在我看来,我的意图是明确的。我想在设备屏幕的中央看到一个按钮。但我只能看到下面的图片。 我在项目控制台中有一个输出,非常可怕,我无法从中理解任何东西。 无法同时满足约束。可能以下列表中至少有一个约束是您不想要的。尝试以下方法:(1)查看每个约束,并尝试找出您不期望的约束;(2) 查找添加了一个或多个不需要的约束

  • 问题内容: 我将Spring 3.1.3用于Web应用程序,将XML配置与组件扫描结合使用。 我意识到,其中一个扫描组件必须在其他几个组件之前进行初始化。在所有需要构造后初始化的类上,我在方法上具有@PostConstruct批注。 为了设置依赖关系顺序,我在需要先后构造的类上将“ @Component”更改为“ @Component(“ configData”)”。然后,在每个需要在“ conf