java - 使用 JVM 参数在 jar 应用程序中运行 java
问题描述
我正在开发一个 Java 应用程序。当我尝试使用命令运行打包版本的应用程序时:
java -Djdk.tls.client.protocols=TLSv1.2 -jar .\target\filesharing-0.0.1-SNAPSHOT.jar
我收到以下错误:
java.lang.ClassNotFoundException: /tls/client/protocols=TLSv1/2
我正在使用 OpenJDK11,我认为语法是正确的。我错了什么?先感谢您。
解决方案
对于未来的搜索者,Powershell 需要包含要引用的句点(句号)字符的命令行参数。所以在这种情况下,命令应该是:
java "-Djdk.tls.client.protocols=TLSv1.2" -jar .\target\filesharing-0.0.1-SNAPSHOT.jar
任何-D
类型的参数都应该用双引号括起来。
如果您没有使用 Powershell,而是使用cmd
wrap 只是-D
双引号中的值:
java -Djdk.tls.client.protocols="TLSv1.2" -jar .\target\filesharing-0.0.1-SNAPSHOT.jar
推荐阅读
- java - 存储的drawable在Android中发生了变化
- clojure - 如何使用 lein exec 要求 clojure.java.io?
- python-3.x - IDLE 中的光标位置
- c++ - 提示用户输入一个单词,然后检查它是否有双字符
- javascript - 在视图和 JS 之间传递变量;姜戈
- sql - 如何在 WHERE 子句中将 SQL OR 运算符与 IN SELECT 子查询一起使用?
- android - vs代码中的扩展不加载
- full-text-search - 电报组过滤
- ffmpeg - 使用 ffmpeg 为 Cloud Speech-to-Text 录制流音频
- php - Laravel Passport API 上传多张图片