28
A
回答
43
您可以通过java -cp myapp.jar com.example.Main1
和java -cp myapp.jar com.example.Main2
访问。当您通过java -jar myapp.jar
调用您的应用程序时,该jar中的默认主类是用于。
请参阅JAR_(file_format)了解更多详情。当你在Eclipse中选择主类时,这是在jar文件中的jar清单META-INF/MANIFEST.MF
里设置的:Main-Class: myPrograms.MyClass
。
8
是的,这是可能的。你可以在每个下面添加一个主类的方法,以便根据参数执行所需的类/方法。
E.g.
public static void main(String... args) {
if ("foo".equals(args[0])) {
Foo.main(args);
} else if ("bar".equals(args[0])) {
Bar.main(args);
}
}
(不要忘记加上明显的自行检查,如args.length
等)
,您可以为使用如下:
java -jar YourJar.jar foo
如果精心设计的,然而,这可能使其他类的main()
方法变得多余。例如。
public static void main(String... args) {
if ("foo".equals(args[0])) {
new Foo().execute();
} else if ("bar".equals(args[0])) {
new Bar().execute();
}
}
抽象这更(摆脱的if/else块),你可以考虑让他们实现一些Action
接口与void execute()
并在Map
让他们抓住:
private static Map<String, Action> actions = new HashMap<String, Action>();
static {
actions.put("foo", new Foo());
actions.put("bar", new Bar());
}
public static void main(String... args) {
actions.get(args[0]).execute();
}
相关问题
- 1. 在运行时在GridEx中选择行
- 2. 在运行时交换运行的jar
- 3. 在运行时选择AspxGridView
- 4. sbt:选择运行的主类
- 5. 在运行时选择不同的jar - 切换
- 6. 在运行时生成可执行jar
- 7. 程序在Eclipse中运行,但运行jar不运行
- 8. ANTLR4运行时JAR
- 9. 在eclipse中运行jar
- 10. 在运行时选择反应组件的类型在JSX中
- 11. 在运行时选择ctor参数
- 12. 如何在运行时选择jre?
- 13. 在DataTable上选择运行时间
- 14. 在雪豹上运行Jar类路径
- 15. 如何在使用Jupyter在VSCode中运行时选择要运行的单元?
- 16. 在运行时选择基类类型,如模板
- 17. NoClassDefFoundError运行时在Android Studio中的.AAR类中的运行时
- 18. 在servlet中的jar中运行类时出现FileNotFoundException
- 19. 在linux下运行java jar
- 20. 在启动时运行jar文件linux
- 21. 在SQLite中选择运行总数
- 22. 运行时注册JAR
- 23. 运行Scala Jar
- 24. 运行在allJoy项目的.jar的UnsatisfiedLinkError,在Eclipse中运行时没有错误
- 25. JAR中的多个可运行类,如何运行它们?
- 26. 在运行时覆盖类
- 27. 通过配置文件在运行时选择变量类型
- 28. 如何计算在运行时选择的类型“对象”
- 29. 在eclipse中运行jar运行速度较慢
- 30. Oracle运行选择与超时选项
这不会与Eclipse Runnable导出一起使用,因为它们将加载委托给自定义类加载器。 – 2012-04-23 01:14:32
如果您具有Class-Path属性,则这不起作用 – 2012-11-12 21:00:13