Java可执行JAR文件

6

我正在尝试从Eclipse中制作可执行的JAR文件(使用MySQL作为数据库)。

如何制作可执行的JAR文件?

我已经制作了一个,但是它显示了一些警告并且无法正常工作。我得到了一个很长的警告列表。以下是警告:


 JAR export finished with warnings. See details for additional information.
  Exported with compile warnings: AngalTask/src/org/isf/accounting/gui/PatientBillEdit.java
  Exported with compile warnings: AngalTask/src/org/isf/accounting/gui/BillBrowser.java
  Exported with compile warnings: AngalTask/src/org/isf/admission/gui/AdmissionBrowserOld.java
  Exported with compile warnings: AngalTask/src/org/isf/admission/gui/AdmittedPatientBrowser.java
  Exported with compile warnings: AngalTask/src/org/isf/admission/gui/AdmissionBrowser.java
  Exported with compile warnings: AngalTask/src/org/isf/disease/gui/DiseaseEdit.java
  Exported with compile warnings: AngalTask/src/org/isf/disease/gui/DiseaseBrowser.java
  Exported with compile warnings: AngalTask/src/org/isf/exa/gui/ExamBrowser.java
  Exported with compile warnings: AngalTask/src/org/isf/exa/gui/ExamEdit.java
  Exported with compile warnings: AngalTask/src/org/isf/help/gui/AboutWindow.java
  Exported with compile warnings: AngalTask/src/org/isf/lab/gui/LabNew.java
  Exported with compile warnings: AngalTask/src/org/isf/lab/gui/LabBrowser.java
  Exported with compile warnings: AngalTask/src/org/isf/lab/gui/LabEditExtended.java
  Exported with compile warnings: AngalTask/src/org/isf/lab/gui/LabPrintFrame.java
  Exported with compile warnings: AngalTask/src/org/isf/lab/gui/LabEdit.java
  Exported with compile warnings: AngalTask/src/org/isf/lab/manager/Results.java
  Exported with compile warnings: AngalTask/src/org/isf/medicals/gui/MedicalBrowser.java
  Exported with compile warnings: AngalTask/src/org/isf/medicals/gui/MedicalEdit.java
  Exported with compile warnings: AngalTask/src/org/isf/medicalstock/gui/MovStockBrowser.java
  Exported with compile warnings: AngalTask/src/org/isf/medicalstock/gui/MovStockInserting.java
  Exported with compile warnings: AngalTask/src/org/isf/medicalstockward/gui/WardPharmacy.java
  Exported with compile warnings: AngalTask/src/org/isf/medicalstockward/gui/WardPharmacyEdit.java
  Exported with compile warnings: AngalTask/src/org/isf/menu/gui/UserEdit.java
  Exported with compile warnings: AngalTask/src/org/isf/menu/gui/Menu.java
  Exported with compile warnings: AngalTask/src/org/isf/menu/gui/MainMenu.java
  Exported with compile warnings: AngalTask/src/org/isf/menu/gui/Login.java
  Exported with compile warnings: AngalTask/src/org/isf/menu/gui/UserBrowsing.java
  Exported with compile warnings: AngalTask/src/org/isf/menu/gui/SubMenu.java
  Exported with compile warnings: AngalTask/src/org/isf/menu/gui/SplashWindow3.java
  Exported with compile warnings: AngalTask/src/org/isf/opd/gui/OpdEdit.java
  Exported with compile warnings: AngalTask/src/org/isf/opd/gui/OpdBrowser.java
  Exported with compile warnings: AngalTask/src/org/isf/opd/gui/OpdEditExtended.java
  Exported with compile warnings: AngalTask/src/org/isf/operation/gui/OperationEdit.java
  Exported with compile warnings: AngalTask/src/org/isf/operation/gui/OperationBrowser.java
  Exported with compile warnings: AngalTask/src/org/isf/patient/gui/PatientInsertExtended.java
  Exported with compile warnings: AngalTask/src/org/isf/patvac/gui/PatVacEdit.java
  Exported with compile warnings: AngalTask/src/org/isf/patvac/gui/PatVacBrowser.java
  Exported with compile warnings: AngalTask/src/org/isf/priceslist/gui/PricesBrowser.java
  Exported with compile warnings: AngalTask/src/org/isf/serviceprinting/print/MedicalStockSelection.java
  Exported with compile warnings: AngalTask/src/org/isf/serviceprinting/print/MedicalPrintSelection.java
  Exported with compile warnings: AngalTask/src/org/isf/stat/reportlauncher/gui/ReportLauncher.java
  Exported with compile warnings: AngalTask/src/org/isf/therapy/gui/TherapyEdit.java
  Exported with compile warnings: AngalTask/src/org/isf/therapy/gui/TherapyEntryForm.java
  Exported with compile warnings: AngalTask/src/org/isf/utils/jobjects/JAgenda.java
  Exported with compile warnings: AngalTask/src/org/isf/utils/jobjects/ShadowBorder.java
  Exported with compile warnings: AngalTask/src/org/isf/utils/jobjects/FixedFrame.java
  Exported with compile warnings: AngalTask/src/org/isf/utils/time/TimeComboBox.java
  Exported with compile warnings: AngalTask/src/org/isf/vaccine/gui/VaccineBrowser.java
  Exported with compile warnings: AngalTask/src/org/isf/vaccine/gui/VaccineEdit.java
  Exported with compile warnings: AngalTask/src/org/isf/video/gui/VideoDevicesPanel.java

修改IDE使用的编译设置,以显示警告的详细信息。 - Andrew Thompson
1
要了解更多关于运行时错误的信息,请使用类似java -jar the.jar的命令从命令行启动应用程序。 - Andrew Thompson
5个回答

5
“it shows some warning and not works”这句话意思是“它显示一些警告,但不能工作”。请注意,如果您不提供遇到的错误详细信息,我们将无法提供太多帮助:http://imgur.com/jacoj Eclipse可能会警告您的可执行jar文件已经创建了警告。这只是意味着您的类有警告(黄色!)。这并不意味着生成的jar文件不能使用。

3
  1. 右键单击需要导出为jar的项目
  2. 从列表中选择“导出”选项
  3. 在新弹出的窗口中,选择“可运行的jar文件”
  4. 点击“下一步”按钮
  5. 在下一个窗口中,为您的jar文件和启动配置(具有主方法的类)命名
  6. 选择所需库的适当选项,然后点击完成按钮

我尝试了这个,但是它导出时有警告,并且jar文件无法执行。 - sohel14_cse_ju
在导出之前尝试修复警告。 - Stephen C
你有一个可执行的主类吗?你有一个主函数吗?如果你在Eclipse中点击“运行”,它会运行吗? - Woody

0

这种情况可能发生在你有一个Java类,其中的内容被完全注释掉。但是,创建的JAR文件很可能可以正常工作。


0

文件->导出->可运行的JAR文件

然后您可以选择,是否将jar文件复制到jar中或仅提取它们


我尝试了这个,但是它导出时有警告,并且jar文件无法执行。 - sohel14_cse_ju
1
警告不会阻止您启动jar。尝试$java -jar filename.jar。会发生什么?当您说“不起作用”时,确切指的是什么? - AvrDragon

-1

警告没关系,这不会对可执行的JAR文件造成问题。

通过解压缩JAR文件并查找Main-Class: <your entry point class with main method>来检查<Your JAR name>.jar\META-INF\MANIFEST.MF

如果没有找到Main-Class,则在创建JAR时出现了问题。

请确保您遵循正确的步骤。请参考创建JAR指南

注意:您可以手动编辑MANIFEST.MF


1
“警告没关系”,但是不应该忽略警告。它们有报告的原因。 - Andrew Thompson
@Andrew 我不确定这些警告如何影响制作可执行的jar文件。你能否解释一下?我知道这样做有一定的目的。 - Avil
1
这取决于警告是什么,我们仍在等待OP提供详细信息。 - Andrew Thompson

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接