如何将 XML 文件内容作为命令行参数传递给 java 命令?
How to pass XML file content into java command as command line argument?
我有一个 xml
文件。我想将 xml
内容传递给 java 命令行参数。
abc.xml :
<a>
<block1>abc</block1>
<block2>xyz</block2>
<block3>pqr</block3>
</a>
下面是我的 groovy
/java
代码,用于从文件中获取数据并将其传递到 java 命令行参数。
File fl = new File("PATH/abc.xml")
String filecontent = fl.getText()
String cmd = "Java -cp abc.jar package.CLASSNAME "+filecontent
Process proc = Runtime.getRuntime().exec(cmd);
proc.waitFor()
这个命令没有执行,只是从进程中出来。
为什么??
未经测试的代码不在我的脑海中,所以请物有所值:
File fl = new File("PATH/abc.xml")
String filecontent = fl.readLines().*trim().join(' ')
String cmd = "java -cp abc.jar package.CLASSNAME \"${filecontent}\""
Process proc = Runtime.getRuntime().exec(cmd);
proc.waitFor()
由于这是 Groovy 代码,我还将其更改为直接调用 package.Classname.main(),而不是分离一个进程和另一个 JVM:
File fl = new File("PATH/abc.xml")
String filecontent = fl.readLines().*trim().join(' ')
package.CLASSNAME.main([filecontent])
我有一个 xml
文件。我想将 xml
内容传递给 java 命令行参数。
abc.xml :
<a>
<block1>abc</block1>
<block2>xyz</block2>
<block3>pqr</block3>
</a>
下面是我的 groovy
/java
代码,用于从文件中获取数据并将其传递到 java 命令行参数。
File fl = new File("PATH/abc.xml")
String filecontent = fl.getText()
String cmd = "Java -cp abc.jar package.CLASSNAME "+filecontent
Process proc = Runtime.getRuntime().exec(cmd);
proc.waitFor()
这个命令没有执行,只是从进程中出来。 为什么??
未经测试的代码不在我的脑海中,所以请物有所值:
File fl = new File("PATH/abc.xml")
String filecontent = fl.readLines().*trim().join(' ')
String cmd = "java -cp abc.jar package.CLASSNAME \"${filecontent}\""
Process proc = Runtime.getRuntime().exec(cmd);
proc.waitFor()
由于这是 Groovy 代码,我还将其更改为直接调用 package.Classname.main(),而不是分离一个进程和另一个 JVM:
File fl = new File("PATH/abc.xml")
String filecontent = fl.readLines().*trim().join(' ')
package.CLASSNAME.main([filecontent])