我是一个使用jetty运行的Web应用程序。我在此Web应用程序中包含了一个client.jar以获取功能。 client.jar需要一个系统属性-Dconfig,其中包含属性文件的位置。当我使用jetty-runner启动应用程序时,如何将其传递给我?我只能通过jetty.xml找到它,但我试图找到是否通过命令行。
答案 0 :(得分:1)
这不是通过命令行传递属性的解决方案。我通过将下面的文件jetty.xml传递给命令行来修复此问题,如下所示。我在这里发帖,因为它可能有助于某人。
nohup $JAVA_HOME/bin/java -Denv=$1 -jar $LIB_PATH/jetty-runner-*.jar --config $CONF_PATH/jetty.xml $DIST_PATH/my-app*.war &
的jetty.xml
<?xml version="1.0"?>
<!DOCTYPE Configure PUBLIC "-//Jetty//Configure//EN" "http://www.eclipse.org/jetty/configure.dtd">
<Configure id="Server" class="org.eclipse.jetty.server.Server">
<Call class="java.lang.System" name="setProperties">
<Arg>
<New class="java.util.Properties">
<Call name="putAll">
<Arg>
<Call class="java.lang.System" name="getProperties" />
</Arg>
</Call>
<Call name="setProperty">
<Arg>iamconfig</Arg>
<Arg>iamclient.properties</Arg>
</Call>
</New>
</Arg>
</Call>
</Configure>
答案 1 :(得分:0)
在我们的项目中,我们使用以下代码集在进行码头时设置系统属性:运行
clean compile -Dcurrent.region=AIR jetty:run