找不到Java家【JAVA教程】

!
也想出现在这里? 联系我们
信息

找不到Java家,第1张

概述找不到Java家

我正在编写一个利用Jsvc作为守护进程启动Java服务的应用程序。 我需要使用像Jsvc这样的Jsvc因为我的应用程序使用1024以下的端口,但我真的不想运行它作为根,所以创build的文件是由另一个用户拥有。 我也想保持依赖关系和configuration的最低限度,以便所有的客户端需求是一个JVM和Jsvc二进制安装。

但是, Jsvc似乎有一个主要的问题。 它无法在给定的Unix *** 作系统上检测到Java的主文件夹,这非常令人沮丧:

$ ./startup.sh Cannot locate Java home

我已经能够通过手动设置JVM主目录来解决Ubuntu上的问题了。

Jsvc … -home /usr/lib/jvm/default-java/ …

有没有什么办法从Bash脚本dynamic地确定Java主目录,这样我就可以在大多数Unix / linux下工作了? 我可以在晚上睡得更好,做一些事情:

jar文件双击不打开

在windows和linux上,file.exists返回不同的结果

用VB.NET客户端的Java套接字服务器?

发送本机事件

杀-3返回空

JAVA_HOME=\”$( … )\” Jsvc … -home \”$JAVA_HOME\” …

…而不是为每个单独的 *** 作系统进行硬编码。 有没有一种方法,给定一个java二进制文件,我可以find其JVM / JRE的主目录?

hadoop命令如何与javac一起使用

configurationjenkins不同的user.home

使用Java 8在windows上deBUGgingspark过程

seleniumIEDriver问题启动IE NoSuchWindowException

下载远程文件到本地目录在windows中

不知道这是否跨越* nixes,但找到了这个解决方案:

JAVA_HOME=\”$( readlink -f \”$( which java )\” | sed \”s:bin/.*$::\” )\”

我已经在Ubuntu上测试过它,但它对OSX无效。

我的解决方案是编译本地的linux源代码作为主要的Jsvc页面在http://commons.apache.org/proper/commons-daemon//Jsvc.HTML

这是我一步一步的程序

下载www.fightrice.com/mirrors/apache/commons/daemon/source/commons-daemon-1.0.13-src.tar.gz

一旦你解压文件,然后去….. / commons-daemon-1.0.13-src / src / native / unix

在终端作为根做以下几点:

$ support / buildconf.sh

$ ./configure –with-java = / usr / lib / jvm / default-java

$ make

测试生成的Jsvc二进制应用程序

$ ./Jsvc -help

有用! 干净。

使用dirname和which命令来查找Java的bin目录:

echo `dirname `which java“ JAVA_HOME=`dirname `which java“

…只有当Java已经在$PATH上时才有效。

另一种方法是:

type -p java

预计这将返回正确的JAVA安装文件夹。

总结

以上是内存溢出为你收集整理的找不到Java家全部内容,希望文章能够帮你解决找不到Java家所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

© 版权声明
THE END
喜欢就支持一下吧
点赞109 分享
评论 抢沙发

请登录后发表评论

    请登录后查看评论内容