【问题标题】:Find Main Class of referenced jar查找引用 jar 的主类
【发布时间】:2013-09-02 00:04:29
【问题描述】:

JavaFX 应用程序 (jar) 在我的项目中被引用为依赖项。

这个jar中的“Main Class”包含main方法和start方法,用来运行这个应用程序。

现在我想从另一个类中找到这个“主类”,这样我就可以在不传递“主类”的确切名称的情况下启动应用程序。是否有任何可能的解决方案可以在引用的 jar 中找到类名?

【问题讨论】:

  • 你能把JavaFX jar 文件做成可执行的jar 文件吗?
  • 已经是可执行的jar了,不是重点。

标签: java class jar javafx main


【解决方案1】:

当前线程堆栈跟踪中的第一个元素[第一个我的意思是进入堆栈的第一个元素]是主类。试试这个:

StackTraceElement[] stack = Thread.currentThread ().getStackTrace ();
StackTraceElement main = stack[stack.length - 1];
String mainClass = main.getClassName ();

【讨论】:

  • 我认为这只有在 jar 已经执行时才有效。但问题是,我编写了一个测试程序,它验证引用的 jar 中所有 gui 元素的正确工作。但是测试jar的主类可能不同,所以我必须保持这个可交换。
猜你喜欢
  • 2023-03-05
  • 2013-06-30
  • 1970-01-01
  • 2017-12-10
  • 2018-06-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-04-21
相关资源
最近更新 更多