我正在尝试使用以下命令在avatar.js的帮助下在JVM上运行node.js应用程序: http://blog.jonasbandi.net/2014/03/running-nodejs-applications-on-jvm-with.html
java -Djava.library.path = dist -jar dist / avatar-js.jar app.js
想知道此命令中每个单词的确切含义是什么。
答案 0 :(得分:0)
在Oracle网站(https://docs.oracle.com/en/java/javase/11/tools/java.html)和命令本身(请尝试java -?
)中都有大量记录。
-Djava.library.path=dist
部分的意思是:
-D<name>=<value>
set a system property
因此,这会将java.library.path
属性设置为dist
。我认为这可能与使用JNI(Java本机接口)扩展有关,它告诉JVM在哪里寻找本机库文件。
下一部分-jar dist/avatar-js.jar app.js
指示Java以dist/avatar-js.jar
作为程序参数执行名为app.js
的jar文件,其文档如下:
or java [options] -jar <jarfile> [args...]
(to execute a jar file)
答案 1 :(得分:0)
从man java
(也可以从here获得):
-Dproperty=value
设置系统属性值。属性变量是一个没有空格的字符串,代表属性的名称。 value变量是代表属性值的字符串。如果value是带空格的字符串,则将其括在引号中(例如-Dfoo =“ foo bar”)。
-jar filename
执行封装在JAR文件中的程序。 filename参数是具有清单的JAR文件的名称,该清单包含Main-Class:classname形式的行,该行使用public static void main(String[] args)
方法定义类,该方法用作应用程序的起点。
使用-jar选项时,指定的JAR文件是所有用户类的源,而其他类路径设置将被忽略。 有关JAR文件的更多信息,请参见以下资源: