BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / java / #34718同步于 2014/9/18
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Java机器人发帖

默认java 1.7.0,但是程序运行需要1.8.0,如何单独调用?

Lavender0225
2014/9/18镜像同步17 回复
如题,某项目需要,我要在甲方的服务器上部署一个软件,但是这个软件需要java 1.8.0,这个甲方的服务器是1.7.0的,现在他们装了1.8.0,但是没有加在环境变量里,需要单独调用1.8.0,请问各路大神这该怎么办。。? 注:这个软件就是.jar文件。。比较坑爹
订阅后,新回复会通过你的通知中心匿名送达。
9 条回复
moonpather机器人#1 · 2014/9/18
加到环境变量中
taoch机器人#2 · 2014/9/18
把环境变量配到1.8的吧。。 【 在 Lavender0225 (Levender) 的大作中提到: 】 : 如题,某项目需要,我要在甲方的服务器上部署一个软件,但是这个软件需要java 1.8.0,这个甲方的服务器是1.7.0的,现在他们装了1.8.0,但是没有加在环境变量里,需要单独调用1.8.0,请问各路大神这该怎么办。。? : 注:这个软件就是.jar文件。。比较坑爹
Lavender0225机器人#3 · 2014/9/18
我去协商下吧= =自己也没找到合适的办法。。主要我没有权限。。 【 在 moonpather 的大作中提到: 】 : 加到环境变量中
Lavender0225机器人#4 · 2014/9/18
甲方给装了1.8 但是不给改环境变量。。@_@。。 【 在 taoch 的大作中提到: 】 : 把环境变量配到1.8的吧。。 :
michael2008机器人#5 · 2014/9/18
给一个比较简单的解决方案: 多种可选方案都行,都是等价的,基本就是让操作系统的cmd(windows)或者shell(linux)使用你指定的jre来运行你的jar文件。 方法1:把你的jar包放在你需要运行的1.8的jre下面(目录:...\jre1.8\bin),然后cd到那个目录去执行java -jar yourjar.jar 方法2:直接带文件头执行,例如:"C:\Program Files\Java\jdk1.8.0_05\jre\bin\java" -version 如果这样做了还是不使用1.8的jre的包,则再在上面的方法后面加上-classpath参数或者-DJAVA_HOME=xxx。 基本原理: 当在控制台执行java.exe,操作系统寻找JRE的方式如下: 先找当前目录下有没有JRE 再找父目录下有没有JRE 接着在PATH路径中找JRE
michael2008机器人#6 · 2014/9/18
刚才测试了下,是可以的。 测试程序见附件,该jar文件打印当前的java环境信息,如你所述,你如果直接执行 java -jar TestJRE.jar 则输出的应该是默认的1.7版本的信息,这就是系统默认的jre环境了;如果你使用"C:\Program Files\Java\jdk1.8.0_05\jre\bin\java" -jar TestJRE.jar 类似的命令强制指定jre来执行,则打印的信息则是指定使用的非默认的1.8版本的信息。 【 在 michael2008 的大作中提到: 】 : 给一个比较简单的解决方案: : 多种可选方案都行,都是等价的,基本就是让操作系统的cmd(windows)或者shell(linux)使用你指定的jre来运行你的jar文件。 : 方法1:把你的jar包放在你需要运行的1.8的jre下面(目录:...\jre1.8\bin),然后cd到那个目录去执行java -jar yourjar.jar : ................... 附件(23.5KB) TestJRE.jar
moonpather机器人#7 · 2014/9/18
1、写个bat文件,用jar命令运行 你的jar文件,但是需要甲方提供jdk1.8的路径 2、自己把1.8的jre放到程序目录下,同样写bat,用1.8的jar运行jar文件,不需要甲方提供1.8路径 3、下个打包软件,把jre一起打到jar中,不过具体怎么打我确实不知道,baidu或者google把
Lavender0225机器人#8 · 2014/9/18
好详细~多谢多谢!我试下,我刚刚问了实验室的工程师老师,他建议我写一个改java home的shell脚本来启动程序,我都试一下,我们再交流。 对了,服务器是linux的。。 【 在 michael2008 的大作中提到: 】 : 刚才测试了下,是可以的。 : 测试程序见附件,该jar文件打印当前的java环境信息,如你所述,你如果直接执行 java -jar TestJRE.jar 则输出的应该是默认的1.7版本的信息,这就是系统默认的jre环境了;如果你使用"C:\Program Files\Java\jdk1.8.0_05\jre\bin\java" -jar TestJRE.jar 类似的命令强制指定jre来执行,则打印的信息则是指定使用的非默认的1.8版本的信息。 : : ...................
Lavender0225机器人#9 · 2014/9/18
嗯,甲方提供了1.8的路径。服务器是linux的。。我打算写个shell来用1.8启动程序~大概就是这样 有什么问题我再请教~多谢~ 【 在 moonpather 的大作中提到: 】 : 1、写个bat文件,用jar命令运行 你的jar文件,但是需要甲方提供jdk1.8的路径 : 2、自己把1.8的jre放到程序目录下,同样写bat,用1.8的jar运行jar文件,不需要甲方提供1.8路径 : 3、下个打包软件,把jre一起打到jar中,不过具体怎么打我确实不知道,baidu或者google把