有多个主要的罐子
Jar with multiple main
在一个包中我有两个不同的 classes Client.java 和 Server.java
我想制作这个包 jar,我的意思是可执行文件。
首先,我希望服务器 class 变为 运行,2-3 秒后我希望客户端方法变为 运行。可能吗?
谢谢
你必须只留下一个主要方法,运行你的服务器和客户端在不同的线程中。
要做到这一点,请查看 Runnable 界面。您的服务器 class 和客户端 class 应该实现它。然后你必须将用于启动服务器和客户端的逻辑移动到它的 run()
方法。
class Server implements Runnable {
@Override
public void run() {
//your server starting logic here
}
}
class Client implements Runnable {
@Override
public void run() {
//your client starting logic here
}
}
之后,您可以修改 main
方法来启动服务器和客户端,例如:
public static void main(String args[]) throws InterruptedException {
Server server = new Server();
Client client = new Client();
Thread tServer = new Thread(server);
tServer.start();
//here you can wait some time to Server started
Thread tClient = new Thread(client);
tClient.start();
}
在一个包中我有两个不同的 classes Client.java 和 Server.java 我想制作这个包 jar,我的意思是可执行文件。 首先,我希望服务器 class 变为 运行,2-3 秒后我希望客户端方法变为 运行。可能吗?
谢谢
你必须只留下一个主要方法,运行你的服务器和客户端在不同的线程中。
要做到这一点,请查看 Runnable 界面。您的服务器 class 和客户端 class 应该实现它。然后你必须将用于启动服务器和客户端的逻辑移动到它的 run()
方法。
class Server implements Runnable {
@Override
public void run() {
//your server starting logic here
}
}
class Client implements Runnable {
@Override
public void run() {
//your client starting logic here
}
}
之后,您可以修改 main
方法来启动服务器和客户端,例如:
public static void main(String args[]) throws InterruptedException {
Server server = new Server();
Client client = new Client();
Thread tServer = new Thread(server);
tServer.start();
//here you can wait some time to Server started
Thread tClient = new Thread(client);
tClient.start();
}