Win a copy of Re-engineering Legacy Software this week in the Refactoring forum
or Docker in Action in the Cloud/Virtualization forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

eclipse: libraries used in project are not found in the exported jar

 
Simone Cittadini
Greenhorn
Posts: 13
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I have such an eclipse project :

- the project

- my common libraries
-- lib

lib is a directory with 3 jars in it (mysql-db, jfig and log4j)
these jars are added to "my common libraries" with 'Java Build Path'->Libraries->Add Jars

in "the project" 'Java Build Path'->Projects->'Required Projects on the build path' I've added "my common libraries", with no access rules

The project works when run from the IDE, but if I try to export a jar :

simone@newbrand:~> java -jar hcc2mag06.jar
Exception in thread "main" java.lang.NoClassDefFoundError: org/igfay/jfig/JFigException
at it.retireti.hcc.linee.FacadeLinee.<init>(FacadeLinee.java:35)
at it.retireti.hcc.gui.HPanelTerminazioni.<init>(HPanelTerminazioni.java:45)
at it.retireti.hcc.gui.HControlCenterFrame.init(HControlCenterFrame.java:40)
at it.retireti.hcc.gui.HControlCenterFrame.<init>(HControlCenterFrame.java:29)
at it.retireti.hcc.gui.HControlCenterGUI.<init>(HControlCenterGUI.java:13)
at it.retireti.hcc.gui.HControlCenterGUI.main(HControlCenterGUI.java:34)


SDENG ! quite frustrating ... what I'm missing ? what's the correct way to add libraries / export jars ?
 
Ilja Preuss
author
Sheriff
Posts: 14112
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
When you export a jar in Eclipse, only the compiled class files are included. In fact, Java doesn't have a standard mechanism to have a jar inside a jar be referenced by a classloader.

So the common thing to do is to manually add the jar dependencies to the classpath when starting the program outside of eclipse.

Or you could use http://one-jar.sourceforge.net/
 
Simone Cittadini
Greenhorn
Posts: 13
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
I've also found http://fjep.sourceforge.net/ which integrates with eclipse
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic