Debian系统设置Java系统属性失败,执行命令仅返回用法提示求助
问题分析与解决办法
哥们,你这问题其实是Java命令的语法使用错误导致的——你只给了系统属性参数,但没告诉Java要运行哪个程序(类文件或者Jar包),所以它只能输出使用说明来提醒你。
为什么会这样?
Java命令的基本语法是:
java [-options] class [args...] # 或者 java [-options] -jar jarfile [args...]
其中-Dxxx=xxx属于[-options]部分,但这部分必须搭配后面的class或者-jar jarfile一起使用,否则Java不知道要启动什么应用,自然就返回帮助信息了。你现在的命令只有选项,没有目标程序,所以完全没达到设置系统属性的效果。
正确的做法
根据你要启动的程序类型,调整命令:
- 如果是运行某个主类:
java -Djavax.net.ssl.keyStore=/opt/jira/jre/lib/security com.yourcompany.YourMainClass - 如果是运行Jar包:
java -Djavax.net.ssl.keyStore=/opt/jira/jre/lib/security -jar your-app.jar
针对Jira的额外建议
如果你是要给Jira设置这个SSL属性,其实不用手动敲java命令启动。通常直接修改Jira的启动配置脚本(比如Linux下的setenv.sh,Windows下的setenv.bat),在里面添加到JAVA_OPTS变量中:
# Linux/Mac示例 JAVA_OPTS="$JAVA_OPTS -Djavax.net.ssl.keyStore=/opt/jira/jre/lib/security"
保存后重启Jira,这个系统属性就会自动生效,比每次手动加参数方便多了。
内容的提问来源于stack exchange,提问作者umair
相关产品推荐
相关产品推荐

