开发者

"Could not find main method from given launch configuration" error when exporting jar from Eclipse

开发者 https://www.devze.com 2023-01-23 16:08 出处:网络
I developed my program using Eclipse as my IDE. I used to use File|Export| Runnable JAR file option for creating dist build for client.

I developed my program using Eclipse as my IDE. I used to use File|Export| Runnable JAR file option for creating dist build for client.

I was working with project using Run or (often) Debug button in eclipse (so I have configuration for project with valid main method).

Unfortunately when I created build yesterday I had following error when I tried to run app:

Failed to load Main-Class manifest attri开发者_高级运维bute from My.jar

Then when I retried exporting I found the following problem in export log:

Could not find main method from given launch configuration

I have no idea what could cause this problem. I think I hadn't change anything in my project configuration. And I'm test my builds so I'm sure this option used to work correctly.

I will appreciate any help.


Are you selecting correct 'Launch Configuration' in the export dialog? Make sure it's from your project.

Also, once exported you could unzip jar file and look into 'META-INF/MANIFEST.MF' file - there should be 'Main-Class' entry with fully qualified name of your class where the main() method is.


I had this problem and none of the other options worked. Even removing and starting with a new workspace. In my case the problem was that I hadn't manually added the "classes" directory of my project to the classpath of the debug configuration that I was using to debug the java app. I don't know why it didn't pick up the classes directory automatically as part of the project from which I was running the app. In any case it started working again after that.


just had the same problem :s it's annoying but easy to manually fix in the manifest file.

  1. open the .jar file with winrar or 7zip.
  2. locate the manifest file (META-INF folder)
  3. change it to this.

Manifest-Version: 1.0 main-class: (package).(main-class)

In my case i had it in the default package.

Manifest-Version: 1.0 main-class: run


If you are not able to find your class file in Launch configuration, Right click on your project - > run as Java Application. Now export again.

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号