2

我想创建 Jitsi 的可运行 jar,它是最受欢迎的 SIP 通信器之一。因此,我将 Jitsi 打包为一个可运行的 jar。当此可运行 jar 被传递适当的 VM 参数时,可以使用它,例如:

-Dfelix.config.properties=file:lib/felix.client.run.properties
-Djava.util.logging.config.file=lib/logging.properties
-Dnet.java.sip.communicator.SC_HOME_DIR_NAME=Jitsi-dev

我的 Main 类使用这些参数调用这个可运行的 jar,如下所示:

public class Main {  
    public static void main(String[] args) {  
        try {  
            Process p = Runtime.getRuntime().exec("java", 
                "-Dfelix.config.properties=file:lib/felix.client.run.properties", 
                "-Djava.util.logging.config.file=lib/logging.properties", 
                "-Dnet.java.sip.communicator.SC_HOME_DIR_NAME=Jitsi-dev, 
                "-jar", "jitsi.jar");  
        } catch (IOException e) {  
            e.printStackTrace();  
        }  
    }  
}

当然,在我的 jar 中,您还可以在 lib 文件夹中找到这两个属性文件(felix.client.run.properties 和 logging.properties),并且还可以在 jitsi.jar 中找到之前打包的 Jitsi。不幸的是,我收到一个错误,即未加载通过命令行的 config.properties。但是,当我制作一个运行 jitsi.jar 且参数相同的 shell 脚本时,我可以运行 Jitsi。上面的代码有什么问题?

4

0 回答 0