我使用apt-get在我的ubuntu盒子上安装了openjdk-6-jdk.
在系统信息中,jenkins告诉我Java.Home是 /usr/lib/jvm/java-6-openjdk/jre
但是当我JAVA_HOME在Jenkins中指定该目录:"configure system"时,它会返回错误消息,指出该目录看起来不像jdk目录.
它也没能拿起我的maven安装.
我错过了一些明显的东西吗
当我输入echo $ JAVA_HOME时,我得到$ JAVA_HOME而不是jdk的位置.我正确地设置了环境变量的路径:
变量名:JAVA_HOME变量值:C:\ Program Files\Java\jdk1.7.0_25
我究竟做错了什么?
我正在使用Windows .bat脚本,我设置JAVA_HOME为C:/Program Files/Java/jdk1.6.0_32
当我执行时java -version,它仍然显示1.3
我怎样才能解决这个问题?我究竟做错了什么?
我做了以下步骤,但java似乎不适合我,我是否需要重新启动我的系统,如果是,为什么?
1. Right click My Computer->Advence Option->Environment Varibles->System Variables
2. variable : Path->Edit
3. Copy your jdk bin directory i.e.C:\Program Files\Java\jdk1.7.0_51\bin
4. Paste it after putting a semi-colon(;) in value section
Run Code Online (Sandbox Code Playgroud)
我在cmd中运行java时遇到错误
C:\Users\User>java -version
Error: opening registry key 'Software\JavaSoft\Java Runtime Environment'
Error: could not find java.dll
Error: Could not find Java SE Runtime Environment.
Run Code Online (Sandbox Code Playgroud) 我将JAVA_HOME变量设置为C:\Program Files\Java\jre6\当我在项目上运行maven包时它告诉我它无法解析依赖项
[ERROR] Failed to execute goal org.codehaus.mojo:aspectj-maven-plugin:1.0:compile (default) on project roo: Execution default of goal o
rg.codehaus.mojo:aspectj-maven-plugin:1.0:compile failed: Plugin org.codehaus.mojo:aspectj-maven-plugin:1.0 or one of its dependencies
could not be resolved: Could not find artifact com.sun:tools:jar:1.4.2 at specified path C:\Program Files\Java\jre6/../lib/tools.jar ->
[Help 1]
Run Code Online (Sandbox Code Playgroud)
所以它假设JAVA_HOME实际上比实际更深一层,我查看了maven本地存储库并发现log4j 1.2.16使用了这个依赖
我试着让JAVA_HOME看起来像C:\Program Files\Java\jre6\bin\然后maven不会运行,它告诉我我的JAVA_HOME路径错了
我有一个拥有JAVA_HOME环境变量的Jenkins Slave(一台Windows PC).我在Slave上更新了Java版本,所以我也更新了环境变量.
当我通过Jenkins web界面查看此Slave的系统属性时,该JAVA_HOME属性被报告为旧属性.
echo %PATH%在Windows PC上运行会显示正确的值.println System.getenv("PATH")在Slave的Jenkins Node脚本控制台上运行会显示旧的JAVA_HOME值.
我试图删除并再次添加Slave并重新启动Jenkins服务器.旧的价值仍未更新.
有什么想法吗?
在我的build.xml文件中,我有以下几行:
<property environment="env"/>
<echo message="JAVA_HOME is set to = ${env.JAVA_HOME}" />
Run Code Online (Sandbox Code Playgroud)
在某些机器上,这将打印出来
"JAVA_HOME is set to = /usr/jdk1.6"
Run Code Online (Sandbox Code Playgroud)
但在其他一些方面,它会打印出来
"JAVA_HOME is set to = ${env.JAVA_HOME}"
Run Code Online (Sandbox Code Playgroud)
有谁知道这会导致什么?
谢谢
我想让Java以1.6xxx运行 - 我更改了JAVA_HOME变量并将其指向目录C:\ Program Files\Java\jdk1.6.0._16.
我重新启动了PC - 我想我可以检查我的机器指向的Java版本 - 但它仍然指向旧版本的Java,例如v1.5.0_16
你能帮我解决Java JDK正确设置的问题吗?

当我尝试运行时mvn(Apache Maven,那就是),我一直在努力error "JAVA_HOME" not set.
我按照说明将JAVA_HOME变量设置如下; 在终端:
user@localhost$export JAVA_HOME=/home/user/jdk1.7.0_02/bin/java
user@localhost$export PATH=$PATH:/home/usr/jdk1.7.0_02/bin
Run Code Online (Sandbox Code Playgroud)
看起来是对的,对吧?那为什么我仍然得到错误的JAVA_HOME错误?
我在运行Jar文件的Linux机器上有一个bash脚本.以普通用户身份登录时,我无权运行该脚本,但会打印以下日志:
*INFO * Using JVM found at /opt/jdk6/bin/java
Run Code Online (Sandbox Code Playgroud)
当我尝试使用Sudo的脚本时,它给出:
*ERROR* Unable to locate java, please make sure java is installed and JAVA_HOME set
Run Code Online (Sandbox Code Playgroud)
我已经设置JAVA_HOME了相同的路径 - 可以看到它echo $JAVA_HOME&它也被设置为脚本中的选项.我很高兴脚本不是问题 - 这是一个默认的CQ5控制脚本,我在其他几十个盒子上使用它没有问题.只是不确定我上面做错了什么并假设它是Linux设置时我缺少的东西?
当我运行sudo命令时,它是否可以访问JAVA_HOME我自己设置的命令?