[英]Run multiple java main classes at once in netbeans
我有几个带有不同参数的主类。 我还成功将参数添加到每个类。
但是问题是:我每次必须手动启动每个类(例如,单击运行文件)。
有没有一种解决方案,我可以一键启动netbeans中的所有类? 并且这些类还应遵循特定的顺序。
在NetBeans中使用特定名称打开一个新项目(文件->新项目并完成遍历)。
通过转到文件->新文件->并完成遍历,可以在一个项目下创建任意数量的新类。 此时,您不应在这些类中包含main方法。 不要每次都打开一个新项目。
创建另一个文件(通过File-> New File等)。 这次在这个新类中,包括main方法的代码。 在main方法中,您可以通过创建这些类的实例来调用任何数量的类。 这些类将按照您在main方法下调用它们的顺序执行,只要所有这些类都包含在同一文件夹中,即同一项目下即可。
好像您在编写Java程序一样,就像在过程语言中一样。 在某种程度上,Java类类似于过程语言的子例程。 调用它们是通过创建该类的实例来完成的。
也许分别给每个班打电话? 例如:
FirstClass.java
SecondClass.java
ThirdClass.java
在FirstClass中,您只需要使用setVisible(true)
来调用SecondClass即可弹出。 然后在SecondClass中调用ThirdClass以相同的方式弹出。
我不确定这是否是您想要的,因为没有多余的代码,只是一些让您思考的东西。
您可以尝试通过不同的运行配置运行多个主类。
通过属性设置一个类作为主类并运行,您可以使用以下代码:
ClassName variableName = new ClassName();
variableName.setVisible(true);
假设我的班级名是Dog,我使用frame作为变量名
Dog frame = new Dog();
frame.setVisible(true);*emphasized text*
通过评论和问题,我了解到您想在IDE(netbeans)中同时运行〜5个不同的Java程序,并且启动顺序必须按照特定的顺序进行。 我认为这些程序一旦运行就不需要CLI输入。
尽管在Eclipse中,启动组可以满足您的需求,但是我不知道采用netbeans的方式可以实现您的目标。
除了IDE,我们仍然可以通过编程方式实现此目标。 Java中的main()方法只是一个静态方法,因此,如果您所有的主要方法都在一个项目中,那么您可以制作一个LaunchSequence类或其他东西,然后执行以下操作:
public static void main(String[] args)
{
Thread t1 = new Thread()
{
@Override
public void run()
{
ServerOneClass.main(whateverArgsItNeeds);
}
};
t1.start();
Thread t2 = new Thread()
{
@Override
public void run()
{
ClientOneClass.main(whateverArgsItNeeds);
}
};
t2.start();
//and so on.
//The order is enforced by the order you call start(), not the order in which you declare the threads
}
如果您在不同项目中具有用于这些内容的代码,则可以创建一个新项目并将其添加为依赖项。
如果您确实确实需要所有程序的用户输入,则可以从从另一个Java程序运行Java程序中受益。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.