# Eclipse Project ausserhalb von Eclipse nutzen



## clumsy (2. Sep 2006)

Servus,

ich implementiere eine P2P-Anwendung auf Basis von JXTA. 
Zum Programmieren nutze ich Eclipse. Nun habe ich ein Project angelegt und diverse JARs importiert (das gesamte JXTA-Framework). Dazu habe ich eine eigene kleine HelloWorld-Klasse geschrieben. Läuft auch alles...nur weiß ich nicht, wie ich das gesamte Projekt nun aus Eclipse rausbekomme, so dass ich es auf quasi jedem Rechner laufen lassen kann  Wahrscheinlich stell ich mich einfach zu dumm an  

Wie bekomme ich das gesamte Projekt aus Eclipse raus, damit es auch ohne Eclipse läuft?

```
[clumsy@clumsy P2P_Accounting]$ ll
insgesamt 24
drwxr-xr-x 4 clumsy users 4096 2006-09-02 11:57 .
drwxr-xr-x 5 clumsy users 4096 2006-09-02 00:10 ..
-rw-r--r-- 1 clumsy users  742 2006-09-02 09:48 .classpath
drwxr-xr-x 3 clumsy users 4096 2006-09-02 09:48 .jxta
-rw-r--r-- 1 clumsy users  373 2006-09-02 00:10 .project
drwxr-xr-x 2 clumsy users 4096 2006-09-02 11:55 Test
[clumsy@clumsy P2P_Accounting]$ ll Test/
insgesamt 24
drwxr-xr-x 2 clumsy users 4096 2006-09-02 11:55 .
drwxr-xr-x 4 clumsy users 4096 2006-09-02 11:57 ..
-rw-r--r-- 1 clumsy users 2178 2006-09-02 11:21 FirstTest.class
-rw-r--r-- 1 clumsy users 1954 2006-09-02 11:21 FirstTest.java
-rwxr-xr-x 1 clumsy users  114 2006-09-02 11:55 runit.sh
-rwxr-xr-x 1 clumsy users  119 2006-09-02 11:55 runit.sh~
[clumsy@clumsy P2P_Accounting]$ cat .classpath 
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
        <classpathentry kind="src" path=""/>
        <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER                                                                                                   "/>
        <classpathentry kind="lib" path="/home/clumsy/jxta/jxta-src-2.4/dist/jxt                                                                                                   a.jar"/>
        <classpathentry kind="lib" path="/home/clumsy/jxta/jxta-src-2.4/dist/jxt                                                                                                   aext.jar"/>
        <classpathentry kind="lib" path="/home/clumsy/jxta/jxta-src-2.4/lib/java                                                                                                   x.servlet.jar"/>
        <classpathentry kind="lib" path="/home/clumsy/jxta/jxta-src-2.4/lib/log4                                                                                                   j.jar"/>
        <classpathentry kind="lib" path="/home/clumsy/jxta/jxta-src-2.4/lib/org.                                                                                                   mortbay.jetty.jar"/>
        <classpathentry kind="lib" path="/home/clumsy/jxta/jxta-src-2.4/lib/bcpr                                                                                                   ov-jdk14.jar"/>
        <classpathentry kind="output" path=""/>
</classpath>
```
Habs so versucht: Eine runit.sh angelegt, die die JARs angibt:

```
$ cat runit.sh
#!/bin/sh
java -DJXTA_HOME=client -classpath /home/clumsy/jxta/jxta-src-2.4/dist/jxta.jar:/home/clumsy/jxta/jxta-src-2.4/lib/log4j.jar:/home/clumsy/jxta/jxta-src-2.4/lib/bcprov-jdk14.jar:. FirstTest
[clumsy@clumsy Test]$ ./runit.sh
Exception in thread "main" java.lang.NoClassDefFoundError: FirstTest (wrong name: Test/FirstTest)
        at java.lang.ClassLoader.defineClass1(Native Method)
        at java.lang.ClassLoader.defineClass(ClassLoader.java:620)
        at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)
        at java.net.URLClassLoader.defineClass(URLClassLoader.java:260)
        at java.net.URLClassLoader.access$100(URLClassLoader.java:56)
        at java.net.URLClassLoader$1.run(URLClassLoader.java:195)
        at java.security.AccessController.doPrivileged(Native Method)
        at java.net.URLClassLoader.findClass(URLClassLoader.java:188)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
        at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:268)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:251)
        at java.lang.ClassLoader.loadClassInternal(ClassLoader.java:319)
```


Danke!

clumsy

PS: Hier ein Screen vom eclipse mit der Projektstruktur.


----------



## byte (2. Sep 2006)

Wenn Du Export machst, kannst Du das Projekt als Jar exportieren. Dann musst Du noch zusehen, dass die externen Jars alle im Classpath sind. Wenn Du nicht weisst, wie sowas geht, dann such im Forum nach "Jar Manifest" oder wirf einen Blick in die FAQ hier im Forum.


----------



## clumsy (2. Sep 2006)

aber ich dachte, mein runit.sh gibt die pfade der JARs mit?! das sollte doch eigentlich auch funktionieren?


----------

