Vla*_*sny 1 java jar executable-jar
是否有可能从同一个罐子中启动两个不同的应用程序?我编写了简单的客户端服务器,客户端和服务器部分都在一个JAR中.他们使用一些常见的类.
我明白,我可以为客户端和服务器创建单独的jar,并将常用的类和资源放入第三个jar中.这实际上是做事的"正确"方式.但我的任务很简单,课程很小,我只是不想制作三个罐而不是一个.
java -jar需要清单中的Main-Class.似乎没有-jar开关我也无法工作.
顺便说一下,客户端和服务器应该能够并行运行.
您可以在jar中始终有两个主要类,然后根据您是要运行客户端还是服务器来使用它们,例如:
java -cp yourapp.jar com.your.app.ClientMain
Run Code Online (Sandbox Code Playgroud)
和
java -cp yourapp.jar com.your.app.ServerMain
Run Code Online (Sandbox Code Playgroud)
您甚至可以分发bash或bat文件,以便更轻松地运行不同的应用程序.
是的,创建一个带有参数的主类,并使用该参数来确定是否启动客户端或服务器:
public class MyMainClass
{
public static void Main(String[] args)
{
if (args.length != 0 && args[1].toLowerCase().equals("server"))
/* launch the server */;
else
{
/* launch the client */
}
}
}
Run Code Online (Sandbox Code Playgroud)
这就是我要做的.
| 归档时间: |
|
| 查看次数: |
746 次 |
| 最近记录: |