java -jar 传参
时间: 2023-11-09 09:09:19 浏览: 94
通过java -jar命令传递参数时,可以使用-D[propName]=[propValue]的形式携带参数,这样的配置是修改的JVM参数。参数需要放在-jar参数前面。可以通过System.getProperties()方法来获取参数值,例如Properties properties = System.getProperties(); System.out.println(properties.get("path")); 这样可以获取到参数path的值。和使用-Dpath=D:\\这样的方式传递参数相比,两种方式的区别在于传递参数的形式不同。使用-D参数形式传递参数时,可以方便地在命令行中指定参数值,而使用-DpropName=propValue的形式则可以通过程序代码获取参数值。
相关问题
命令行启动jar 并传参
要在命令行启动jar并传参,可以按照以下步骤进行:
1. 打开命令行窗口,进入Java应用程序的目录,例如:
cd /path/to/java/application
2. 启动JAR文件,其中-jar参数指定要启动的JAR文件,例如:
java -jar myapp.jar
3. 如果需要传递参数,则在命令行中添加参数,例如:
java -jar myapp.jar arg1 arg2 arg3
4. 在Java应用程序中,可以使用args数组来读取传递的参数,例如:
public static void main(String[] args) {
for(String arg : args) {
System.out.println(arg);
}
}
这样就可以在命令行中启动JAR并传递参数了。
python调用java接口传参并获取返回值的方法及示例
Python调用Java接口可以通过`JPype`库实现。以下是一个示例,假设我们有一个Java类`HelloWorld`,其中有一个方法`greet`,接受一个字符串参数并返回一个字符串。
Java代码如下:
```java
public class HelloWorld {
public String greet(String name) {
return "Hello, " + name + "!";
}
}
```
Python代码如下:
```python
import jpype
# 开启JVM
jpype.startJVM(jpype.getDefaultJVMPath())
# 加载Java类
HelloWorld = jpype.JClass("HelloWorld")
# 创建Java对象
hello = HelloWorld()
# 调用Java方法
result = hello.greet("World")
# 输出结果
print(result)
# 关闭JVM
jpype.shutdownJVM()
```
上述代码首先使用`startJVM`方法开启JVM,然后使用`JClass`方法加载Java类,使用`hello = HelloWorld()`创建Java对象,并使用`hello.greet("World")`调用Java方法,并将返回值存储在`result`变量中。最后使用`shutdownJVM`方法关闭JVM。
需要注意的是,`JPype`需要与Java的版本对应。如果在Python中使用的是Python 3.x,需要使用`JPype1-py3`包。此外,还需要将Java类所在的jar包加入到Java的classpath中。
阅读全文