Gerar jar de projeto que usa outros jar no Eclipse

Estou usando o Eclipse 3.4.1. Criei um pequeno projeto que necessitava de uns jars. Criei uma pasta lib embaixo do meu projeto, coloquei-os ali e inseri-os no ‘Build Path’ do projeto.
Na IDE, funciona normal, mas com o jar gerado não.
No prompt executando o comando java -jar aparece o erro:

java.lang.NoClassDefFoundError: net/sf/jasperreports/engine/JRDataSource
Caused by: java.lang.ClassNotFoundException: net.sf.jasperreports.engine.JRDataSource
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)
at java.lang.ClassLoader.loadClassInternal(Unknown Source)
Exception in thread “main”

Usei a opção de exportar o projeto usando ‘Runnable Jar’. Funcionou. Mas para outro pequeno projeto, não faz nada.
Tentei acrescentar ao comando as opções -cp. E depois -classpath.

Alguma sugestão ?

Agradeço antecipadamente.

Use o fatjar que vai gerar um unico jar para sua aplicação:

http://fjep.sourceforge.net/fjeptutorial.html

Obrigado, consegui gerar. Esse fat jar já está na versão 3.4.1 de uma forma ‘simplificada’ (não sei o que isso significa) como ‘runnable jar’

Baixei o plugin Fat Jar. No meu outro projeto que o .jar gerado através de 'runnable jar não funcionou ', consegui executar fora do IDE com o Fat jar, mas tive que marcar a opção ‘Select Manifest.MF’ e criar um novo.

Mais uma questão: Se usar o pacote SWT do Eclipse. Gero o .jar no Windows. Eu conseguiria executar esse jar no linux, pois para cada ambiente há um swt.jar específico ? Eu teria que arrumar uma máquina linux e gerar novamente o jar apropriado ?

Creio que o jar ira funcionar no Linux, o ideal é testar em alguma distribuição.