【问题标题】:jar file getting executedjar 文件被执行
【发布时间】:2012-11-26 08:00:13
【问题描述】:

我正在处理一个 jar 文件。我需要做的是将其组件之一添加到我的选项卡式窗格中的面板中。现在的问题是,当我将它的组件添加到我的 Jpanel 时,整个 jar 文件都会被执行(是的,它是一个可执行的 jar 文件)。有人可以帮我吗?这里有 4 个 LOC

JComponent panel_exp = new JPanel();
MyClass exp = new MyClass();
panel_exp.add(exp);
tabbedPane.addTab("Experiment", panel_exp);

但是当它编译时,MyClass jar 文件被执行,而不是我正在导入这个 jar 文件的项目。我正在使用 Eclipse IDE。

【问题讨论】:

  • 你能说得更具体些吗? But when it compiles, MyClass jar file gets executed and not my project that I'm importing this jar file in.是什么意思

标签: java eclipse swing executable-jar


【解决方案1】:

首先,看来你并没有完全理解“executable jar”是什么意思,所以我试着解释一下。

可执行 jar 的概念与将 jar 作为依赖项导入项目无关。

"Executable jar"只是一个普通的jar,唯一的区别是它可以独立运行,借助

java -jar your_jar.jar

因此,jar 在其 MANIFEST.MF 文件中有一个特殊条目,以便 java 可以确定在这种情况下应该运行哪个主类。就是这样。

现在,当您将 jar 导入您的 IDE 时,您与该 jar 的“可执行性”无关,只是没有考虑到它。

所以,问题可能出在你的 ide 配置中,你应该看看什么类被执行以及当你点击“播放”按钮时是如何执行的:)

要获得更深入的答案,您应该详细说明“整个 jar 被执行”的含义

希望对你有帮助

【讨论】:

  • 我的意思是可执行的 jar 文件被执行。我不想在我的面板中添加它的任何一个组件。此外,所有这些代码都被写入一个名为 Demo.. 的类中,并且 Demo 在运行时执行。 :(
  • @IngilaEjaz:请编辑您的问题以显示 您的 JAR 的 MANIFEST.MF 以及您从中加载 MyClass 的 JAR 的 MANIFEST.MF。跨度>
猜你喜欢
  • 2010-10-31
  • 1970-01-01
  • 1970-01-01
  • 2020-12-25
  • 1970-01-01
  • 1970-01-01
  • 2015-11-03
  • 2014-12-31
  • 2015-07-25
相关资源
最近更新 更多