Pessoal, estou seguindo uma apostila que tem um programa lá de exemplo que lê um arquivo XML e coloca trata o resultado e coloca em uma JTable. Esse arquivo XML é o usuário que escolhe usando uma JFileChooser.
O que acontece é o seguinte:
Quando executo o programa diretamente pelo eclipse funciona perfeitamente, carrega os valores certinho e preenche a JTable, mas quando export o arquivo .jar e executo ele roda tranquilo, mas quando escolho o XML ele não preenche a JTable. Para ler o XML eu estou usando uma classe externa a XStream. Tava pensando aqui que poderia ser classpath para essa biblioteca externa, depois descartei a possibilidade por ela estar rodando normal no eclipse. Mas é possível que precise coonfigurar a classpath em outro lugar??
Será que alguém tem alguma idéia do que possa ser o problema??
PEssoal, foi mal… me confundi no titulo do tópico…
O arquivo programa não funciona quando faço a exportação do arquivo .jar
como vc esta tentando rodar o jar?
ao rodar tenta colocar no classpath os jars externos
java -jar MyApplication.jar -cp c:/x/x.jar
vai uma sugestao ae…
abraco
Eu crio o jar usando o Eclipse. Pra executar eu tava dando dois cliques em cima.
Executando pelo prompt ocorre o mesmo problema. Mas pude ver o erro que acontece quando seleciono o XML. Parece que ele realmente não está achando a classe que eu uso pra ler o XML.
Segue como eu executei o jar e o erro que aparece quando seleciono o XML:
C:\Users\Fernando\Desktop>java -jar Argentum.jar -cp C:\Users\Fernando\workspace\fj-16-argentum\lib\xstream-1.3.1.jar
Exception in thread "AWT-EventQueue-0" java.lang.NoClassDefFoundError: com/thoug
htworks/xstream/io/HierarchicalStreamDriver
at argentum.ui.EscolheXML.escolher(EscolheXML.java:24)
at argentum.ui.ArgentumUI$2.actionPerformed(ArgentumUI.java:70)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Sour
ce)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
Caused by: java.lang.ClassNotFoundException: com.thoughtworks.xstream.io.Hierarc
hicalStreamDriver
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
… 27 more
Exception in thread "AWT-EventQueue-0" java.lang.NoClassDefFoundError: com/thoug
htworks/xstream/io/HierarchicalStreamDriver
at argentum.ui.EscolheXML.escolher(EscolheXML.java:24)
at argentum.ui.ArgentumUI$2.actionPerformed(ArgentumUI.java:70)
at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Sour
ce)
at java.awt.Component.processMouseEvent(Unknown Source)
at javax.swing.JComponent.processMouseEvent(Unknown Source)
at java.awt.Component.processEvent(Unknown Source)
at java.awt.Container.processEvent(Unknown Source)
at java.awt.Component.dispatchEventImpl(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.LightweightDispatcher.retargetMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.processMouseEvent(Unknown Source)
at java.awt.LightweightDispatcher.dispatchEvent(Unknown Source)
at java.awt.Container.dispatchEventImpl(Unknown Source)
at java.awt.Window.dispatchEventImpl(Unknown Source)
at java.awt.Component.dispatchEvent(Unknown Source)
at java.awt.EventQueue.dispatchEvent(Unknown Source)
at java.awt.EventDispatchThread.pumpOneEventForFilters(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForFilter(Unknown Source)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(Unknown Source)
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
Obrigado pela ajuda…
at java.awt.EventDispatchThread.pumpEvents(Unknown Source)
at java.awt.EventDispatchThread.run(Unknown Source)
Caused by: java.lang.ClassNotFoundException: com.thoughtworks.xstream.io.Hierarc
hicalStreamDriver
at java.net.URLClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
at java.lang.ClassLoader.loadClass(Unknown Source)
todos os jars necessarios estao na lib do seu projeto?
se nao tiver copie-os e cole-os na pasta lib do projeto
se seu projeto nao tem essa pasta. so cria-la na raiz do projeto
ahhh e depois aponta, no Build Path, todos os jars para a sua lib…
abraco
Se voce estive usando biblioteca vc nao pode usa o export padrão do eclipse procure pelo plugin Build Fat jar
e utilize ele para gerar o jar
Valeu Cara… consegui instalando o Fat Jar !!
Muitooo Obrigadoo…
De fato o eclipse não gera o jar com todas as bibliotecas necessárias para funcionar. Como feito, o plugin fat jar é a solução. Para quem precisar, no site
http://www.tiacademicoweb.xpg.com.br
tem tanto o eclipse com o fat jar e o ve instalado, como um tutorial para quem quiser instalar.