Anzeige:
Seite 1 von 2 12 LetzteLetzte
Ergebnis 1 bis 15 von 17

Thema: Java Programme starten unter Linux

  1. #1
    Registrierter Benutzer
    Registriert seit
    Aug 2004
    Beiträge
    115

    Java Programme starten unter Linux

    Hallo,

    ich scheine leider nicht in der Lage zu sein, Javaprogs unter Linux zu starten.

    Nun habe ich natürlich die Suche benüht und dieses:

    http://www.torsten-horn.de/techdocs/...tionUnterLinux

    und dieses:

    http://www.linuxforen.de/forums/showthread.php?t=35241

    gefunden.

    Aber shit happens, es geht nicht.

    Ich habe also das J2SDK runtergeldan und dann mit sh jav.. installiert.
    Das ist dann unter usr/java installiert.

    DAnn habe ich 12. ine neue Datei mit dem Namen 'profile.local' und folgendem Inhalt erzeugt:
    JAVA_BINDIR=/usr/java/j2sdk1.4.0/bin
    JAVA_HOME=/usr/java/j2sdk1.4.0
    JDK_HOME=/usr/java/j2sdk1.4.0
    JRE_HOME=/usr/java/j2sdk1.4.0
    PATH=`echo $PATH|sed 's|:/usr/lib/java/bin|:/usr/java/j2sdk1.4.0/bin|'`
    export JAVA_BINDIR
    export JAVA_HOME
    export JDK_HOME
    export JRE_HOME
    export PATH

    erzeugt. NAtürlich mit dem richtigen Pfadnamen.

    Aber was soll ich sagen?
    echo $PATH
    ergibt leider, daß der Pfad nicht verfügbar ist.
    Auch mit ln -s /opt/j2re-1.4.2/bin/java /usr/local/bin/java
    hat es nicht geklappt.
    Wenn ich nun in der Konsole java -version eingebe...geht nicht.


    Nun bin ich mit meinem Anfängerlatein am Ende. Ich hoffe jemand hier kann mir helfen.
    Ich nutze das Suse 9.1 Prof.
    Das J2SDK benötige ich, weil ich Javaentwickler bin. Nur um der Frage vorzubeugen, warum ich nicht nur das J2RE nehme.

    Grüße

    einherjar.

  2. #2
    Registrierter Benutzer
    Registriert seit
    Jan 2003
    Beiträge
    220
    Mahlzeit,

    hast du wirklich die Korrekten Pfadangaben eingegeben? Denn unten benutzt du einmal 1.4.0 und dann wieder 1.4.2

    bis denn
    ciedan

  3. #3
    Registrierter Benutzer
    Registriert seit
    Aug 2004
    Beiträge
    115

    Ja habe ich

    Zitat Zitat von ciedan
    Mahlzeit,

    hast du wirklich die Korrekten Pfadangaben eingegeben? Denn unten benutzt du einmal 1.4.0 und dann wieder 1.4.2

    bis denn
    ciedan
    ich habe das nur von der einen seite reinkopiert. Ich hatte das allerdings bei mir am Rechner durchaus durch den richtigen Pfad ersetzt.
    Daran wird es also wohl niht liegen.

    Fällt sonst keinem was ein??

  4. #4
    Professional Linux-Newbie Avatar von Alexiel
    Registriert seit
    Aug 2004
    Ort
    FFM
    Beiträge
    74
    geht es generell nicht oder gehts dir um den Pfad? ansonsten mal so probiern:

    1.) ins Quellenverzeichnis wechseln: cd /home/du/sources/proj1/src/

    2.) set CLASSPATH=.

    3.) /usr/java/j2sdk1.4.2/bin/javac Main.java

    4.) /usr/java/j2sdk1.4.2/bin/java Main
    Und sonst so?

  5. #5
    Registrierter Benutzer
    Registriert seit
    Jun 2004
    Beiträge
    1.423
    @einherjar: zur Vereinfachung würde ich folgendes vorschlagen:

    /usr/lib/java -> /usr/java/j2sdk1.4.0
    (Symlink).

    /etc/profile.local
    # -- start --
    JAVA_BINDIR=/usr/lib/java/bin
    JAVA_HOME=/usr/lib/java
    JDK_HOME=/usr/lib/java
    JRE_HOME=/usr/lib/java/jre # stimmt's?
    CLASSPATH=/usr/lib/java/lib/tools.jar:/usr/lib/java/dt.jar
    PATH=$PATH:/usr/lib/java/bin
    #
    export JAVA_HOME JAVA_BINDIR JDK_HOME JRE_HOME CLASSPATH PATH
    # -- end --

    Wenn die neue Java-Version kommt, muss man nur den Symlink 'umbiegen'.

  6. #6
    Registrierter Benutzer
    Registriert seit
    Aug 2004
    Beiträge
    115

    Ich werd irre

    Langsam krieg ich wirklich Zweifel, ob das mit der Plattformunabhängigkeit von Java nicht ein Witz ist.
    Es scheint als wäre M$ die einzige Plattform, auf der man Javaprogramme tatsächlich ausliefern kann.
    Wenn ich mir den Wust angucke, den ich veranstalten muß damit Linux überhaupt mal ein Javaprogramm starten, muß ich mich doch sehr wundern.

    Aber gut(oder schlecht), das Problem sollte sich doch irgendwie lösen lassen.

    Ich habe jetzt alles mal neu probier.

    Hier der Inhalt meiner /etc/profile.local:

    JAVA_BINDIR=/usr/java/j2sdk1.4.2_05/bin
    JAVA_HOME=/usr/java/j2sdk1.4.2_05
    JDK_HOME=/usr/java/j2sdk1.4.2_05
    JRE_HOME=/usr/java/j2sdk1.4.2_05
    PATH=`echo $PATH|sed 's|:/usr/lib/java/bin|:/usr/java/j2sdk1.4.2_05/bin|'`
    export JAVA_BINDIR
    export JAVA_HOME
    export JDK_HOME
    export JRE_HOME
    export PATH

    Diese habe ich übrigens als Textdatei erstellt, und dann einfach profile.local genannt. Vielleicht muß man da einen Trick anwenden? Oder muß ich dem System irgendow sagen das es diese Datei beachten soll?
    Die war nämlich vorher nicht da.

    Also jedenfalls geht es damit nicht...

    Nun habe ich alles mal einzeln in die Konsole eingegeben:

    linux:/ # JAVA_BINDIR=/usr/java/j2sdk1.4.2_05/bin
    linux:/ # JAVA_HOME=/usr/java/j2sdk1.4.2_05
    linux:/ # JDK_HOME=/usr/java/j2sdk1.4.2_05
    linux:/ # JRE_HOME=/usr/java/j2sdk1.4.2_05
    linux:/ # PATH=`echo $PATH|sed 's|:/usr/lib/java/bin|:/usr/java/j2sdk1.4.2_05/bi n|'`
    linux:/ # export JAVA_BINDIR
    linux:/ # export JAVA_HOME
    linux:/ # export JDK_HOME
    linux:/ # export JRE_HOME
    linux:/ # export PATH
    linux:/ # java -version
    bash: java: command not found
    linux:/ # PATH=$PATH:/usr/lib/java/j2sdk1.4.2_05/bin
    linux:/ # java
    bash: java: command not found
    linux:/ # java -version
    bash: java: command not found
    linux:/ # export MANPATH=$JAVA_HOME/man:$MANPATH
    linux:/ # java -version
    bash: java: command not found


    Wie man sieht ohne Erfolg....

    Dann habe ich das probier, habe ich aus dem Buch Java Software Engineerung unter Linux:

    olli@linux:~> export JAVA_HOME=usr/java/j2sdk1.4.2_05
    olli@linux:~> export PATH=$JAVA_HOME/bin:$PATH
    olli@linux:~> export MANPATH=$JAVA_HOME/man:$MANPATH
    olli@linux:~> java -version
    bash: java: command not found
    olli@linux:~>


    Auch Banane.

    Und nu bin ich wirklich am Brechen. Ich wollte eigentlich dauerhaft zum Softwareentwickeln auf Linux umsteigen. Aber irgendwie sehe ich das leider mittlerweile scheitern.
    Vielleicht kann mir hier ja noch jemand den entscheidenden Tipp geben, woran es liegen könnte.

  7. #7
    Registrierter Benutzer
    Registriert seit
    Jul 2004
    Beiträge
    87
    Zitat Zitat von einherjar
    Langsam krieg ich wirklich Zweifel, ob das mit der Plattformunabhängigkeit von Java nicht ein Witz ist.
    Es scheint als wäre M$ die einzige Plattform, auf der man Javaprogramme tatsächlich ausliefern kann.
    Wenn ich mir den Wust angucke, den ich veranstalten muß damit Linux überhaupt mal ein Javaprogramm starten, muß ich mich doch sehr wundern.
    Hast du wenigstens mal probiert, java mit dem komplette Pfad aufzurufen, damit du siehst, ob es überhaupt geht, unabhängig von irgendwelchen Pfadsetzungen?

    Hast du schon mal überlegt, das es vielleicht nicht an Java, sondern an Suse liegt? Nicht, das ich das beweisen könnte, mich würde nur mal interessieren, wie du es wiederlegen kannst Nur weil du Java nicht installiert bekommst (als Javaentwickler wohlgemerkt), heißt das noch lange nicht, das es nicht plattformunabhängig ist.

    Seitdem ich mal jemanden über IRC helfen mußte, dabei dieser ein Programm unter Suse von der Konsole durch aufrufen von "Programmname" starten konnte, der Befehl "which Programmname" das Programm aber nicht gefunden hat, bin ich bei Suse übervorsichtig geworden. Traue nichts und niemanden.

    Code:
    linux:/ # PATH=$PATH:/usr/lib/java/j2sdk1.4.2_05/bin 
    linux:/ # java 
    bash: java: command not found
    Müßte es nicht heißen

    Code:
    export PATH=$PATH:/usr/lib/java/j2sdk1.4.2_05/bin
    Und wenn du schon manuell Pfade setzt, warum nicht dahin, wo die Dateien auch wirklich liegen? Weiter oben hast du doch stehen, das java bei dir in /usr/java/j2sdk1.4.2_05/ liegt, demzufolge müßte die obigen Anweisung doch eigentlich

    Code:
    export PATH=$PATH:/usr/java/j2sdk1.4.2_05/bin
    lauten. Bist du dir eigentlich sicher, was du da alles machst? Irgendwie verwirrst du mich etwas. Bist du ganz sicher, das in /usr/java/j2sdk1.4.2_05/bin eine ausführbare Datei mit Namen java liegt? Dann müßte die obige Exportanweisung zumindest für ein java -version genügen.

    P.S. Dieser Beitrag enthält persönliche Meinungen und Erfahrungen, die u. U. jeglicher Beweisführung entbehren können.

  8. #8
    Registrierter Benutzer
    Registriert seit
    Aug 2004
    Beiträge
    115
    Zitat Zitat von Hate
    Hast du wenigstens mal probiert, java mit dem komplette Pfad aufzurufen, damit du siehst, ob es überhaupt geht, unabhängig von irgendwelchen Pfadsetzungen?
    Ja, geht auch nicht. Wenn ich in das Verzeichnis wechsle und Java aufrufe geht es auch nicht.


    Zitat Zitat von Hate
    Nur weil du Java nicht installiert bekommst (als Javaentwickler wohlgemerkt), heißt das noch lange nicht, das es nicht plattformunabhängig ist.
    1. Das wohlgemerkt ist wohl fehl am Platze. Ich habe bisher ausschließlich unter Win gearbeitet. Und das hier vorliegende Problem hat wohl Linux spezifische Gründe.
    2. Plattformunabhängig ist es natürlich. Aber was hilft es, wenn der Kunde oder Anwender das Prog nicht zu laufen bekommt, weil man Java nur unter Windows vernünftig installieren und benutzen kann?


    Zitat Zitat von Hate

    Bist du dir eigentlich sicher, was du da alles machst? Irgendwie verwirrst du mich etwas. Bist du ganz sicher, das in /usr/java/j2sdk1.4.2_05/bin eine ausführbare Datei mit Namen java liegt? Dann müßte die obige Exportanweisung zumindest für ein java -version genügen.
    1. Nein ich bin mir nicht sicher was ich da mache. Ich bin absoluter Linuxanfänger.

    2. In /usr/java/j2sdk1.4.2_05/bin liegt eine ausführbare Datei namens Java. Aber vielleicht gibt es ein Rechteproblem beim Starten. Aber dann sollte er ja nicht sagen "befehl unbekannt" oder so. Sondern "sie haben nicht die rechte".
    Auch geht es als root nicht. Und der sollte die Rechte zum starten vonausführbaren Dateien ja haben...

    Aber in wie fern das an Suse liegen kann weiß ich nicht.

  9. #9
    auch da
    Registriert seit
    Sep 2002
    Beiträge
    83
    Zitat Zitat von einherjar
    Ja, geht auch nicht. Wenn ich in das Verzeichnis wechsle und Java aufrufe geht es auch nicht.
    es gibt hier zwei möglichkeiten
    Code:
    cd /usr/lib/java/j2sdk1.4.2_05/bin
    java
    und
    Code:
    cd /usr/lib/java/j2sdk1.4.2_05/bin
    ./java
    ersteres wird nicht funktionieren, zweiteres schon.
    wenn zweiteres auch nicht funktioniert, dann haperts and deiner java installation


    [...]Aber was hilft es, wenn der Kunde oder Anwender das Prog nicht zu laufen bekommt, weil man Java nur unter Windows vernünftig installieren und benutzen kann?
    mit solchen aussagen wär ich vorsichtig. java kann man unter linux schnell und vernünftig installieren und benutzen. meiner meinung nach ist es so, dass der installationsprozess unter windows verwirrender ist als unter linux.
    aber das ist eine persönliche meinung und daher abhängig von meiner erfahrung, wie deine probleme abhängig von deiner erfahrung sind.


    Auch geht es als root nicht. Und der sollte die Rechte zum starten vonausführbaren Dateien ja haben...
    falsch. auch root kann nichtausführbare dateien nicht ausführen. er kann lediglich dateien ausführen,
    die zwar ausführbar sind, aber nicht ihm gehören
    (war das jetzt verständlich?)


    meiner erfahrung nach (java auf unterschiedlichen systemen (mandrake, suse, debian) installiert) ist alles was du tun musst (nach der installation von java)
    Code:
    ln -s /<java-dir>/bin/java /usr/bin/java
    ln -s /<java-dir>/bin/javac /usr/bin/javac
    ln -s /<java-dir>/bin/javadoc /usr/bin/javadoc
    ln -s /<java-dir>/bin/jar /usr/bin/jar
    und das wars
    die ganzen pathes usw hab ich noch nie setzen müssen.
    haltet die welt an. ich will aussteigen!

  10. #10
    Distri-Jockey (DJ)
    Registriert seit
    Jun 2003
    Ort
    Anrath
    Beiträge
    107
    Servus,

    also ich weiß ja nicht, was du da machst, aber für mich höhrt dich das ziemlich suspekt an. Deswegen hier mal ein paar Fragen:

    1. Welches Paket hast du denn von Sun runtergeladen? Mit dem rpm-Paket hatte ich auch so meine Probleme.
    2. Wie hast du denn Versucht java auszuführen, als du im Verzeichnis warst? Mit
      Code:
      xypher@mars-base bin $java
      oder
      Code:
      xypher@mars-base bin $./java
      ?


    Ich habe das bei mir so gemacht (als ich noch unter SuSE unterwegs war). Das bin-Paket runtergeladen, mit
    Code:
    chmod +x java...bin
    ausführbar gemacht und dann mit
    Code:
    ./java...bin
    (im selben Verzeichnis wohlgemerkt) ausgeführt.
    Dann, unter KDE, den Konqueror im Systemverwaltermodus gestartet und das entpakte Java nach
    Code:
    /opt/java
    verschoben.
    Dannach mit einem Editor deiner Wahl -- und als root -- die Datei [CODE]ld.so.conf[CODE]bearbeitet und
    • /opt/java
    • /opt/java/bin

    hinzugefügt. Dann eine Shell geöffnet und gut wars.

    Alternativ sollte auf der SuSE CD / DVD auch Eclipse drauf sein inkl. Java. Das könntest du dann über Yast installieren.

    Gruß
    Chris
    Student Angwandte Informatik, Diplom, Universität Duisburg-Essen, Standort Duisburg

    Notebook: Dell XPS-M1530

  11. #11
    Java Fanboy Avatar von comrad
    Registriert seit
    Mar 2001
    Ort
    Delmenhorst
    Beiträge
    4.052
    Zitat Zitat von kanazuchi
    • /opt/java
    • /opt/java/bin

    hinzugefügt. Dann eine Shell geöffnet und gut wars.
    in die ld.so.conf gehören nur library-pfade. Der einfachste Weg ist, wie bereits gesagt, der von Distributor ooooder (wurde auch schon gesagt):

    Code:
    ln -s /opt/java/bin/java /usr/local/bin/java
    ln -s /opt/java/bin/javac /usr/local/bin/javac
    ln -s /opt/java/bin/jar /usr/local/bin/jar
    Das dauert ganze 25 Sekunden und schon läuft dein Java. Wenn du im Konqueror oder im Nautilus noch einstellst, dass er JAR-Dateien mit java -jar öffnen soll, kannst du Java Programme sogar doppelklicken und starten.

    comrad

  12. #12
    Distri-Jockey (DJ)
    Registriert seit
    Jun 2003
    Ort
    Anrath
    Beiträge
    107
    Zitat Zitat von comrad
    in die ld.so.conf gehören nur library-pfade...
    Und wieder was dazu gelernt; auch wenn es geklappt hat...

    Gruß

    Chris
    Student Angwandte Informatik, Diplom, Universität Duisburg-Essen, Standort Duisburg

    Notebook: Dell XPS-M1530

  13. #13
    Registrierter Benutzer Avatar von ThorstenHirsch
    Registriert seit
    Nov 2002
    Beiträge
    6.558
    @einherjar: is bei SuSE 9.1prof denn nicht das SDK von Sun dabei? Haste mal in Yast nachgeschaut? Dann hätteste dir das alles sparen können und wärst mit ein paar clicks am Ziel gewesen.
    ¡Nuestro amigo... el Computador!

  14. #14
    Java Fanboy Avatar von comrad
    Registriert seit
    Mar 2001
    Ort
    Delmenhorst
    Beiträge
    4.052
    Zitat Zitat von kanazuchi
    Und wieder was dazu gelernt; auch wenn es geklappt hat...
    Klar, weil in /bin findet er ja keine, die er hinzufügen kann, drum ists ihm egal

  15. #15
    Professional Linux-Newbie Avatar von Alexiel
    Registriert seit
    Aug 2004
    Ort
    FFM
    Beiträge
    74
    da läuft einfach irgendwas falsch (ja ich weiss, das habt ihr auch schon gemerkt)

    Code:
    [alexiel@kasumi files]$ rpm -qa | grep -i j2sdk
    j2sdk-1.4.2_04-fcs
    Code:
    [alexiel@kasumi files]$ env | grep -i java
    PATH=/usr/bin:/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin/:/usr/games:/usr/java/j2sdk1.4.2_04/bin:/home/alexiel/bin
    Code:
    [alexiel@kasumi files]$ java -version
    java version "1.4.2_04"
    Java(TM) 2 Runtime Environment, Standard Edition (build 1.4.2_04-b05)
    Java HotSpot(TM) Client VM (build 1.4.2_04-b05, mixed mode)
    Und sonst so?

Ähnliche Themen

  1. [kernel 2.6.7 und suse9.0] Problem mit hotplug/udev? Kann booten, aber ....
    Von carnil im Forum Kompilieren von Kernel und Sourcen
    Antworten: 14
    Letzter Beitrag: 29.03.06, 09:33
  2. Abenteuer Mailserver
    Von blade74 im Forum Linux als Server
    Antworten: 7
    Letzter Beitrag: 20.08.04, 11:31
  3. 2+2=4, aber wie ?
    Von blackhobbit im Forum Anbindung an die Aussenwelt
    Antworten: 3
    Letzter Beitrag: 29.04.04, 13:00
  4. Einwahl ins WWW wird ohne Fehlermeldung abgebrochen
    Von MarcusLiebig im Forum System installieren und konfigurieren
    Antworten: 8
    Letzter Beitrag: 21.10.03, 19:53
  5. rp pppoe Suse 7.2
    Von pty im Forum Router und Netzaufbau
    Antworten: 3
    Letzter Beitrag: 20.10.01, 16:39

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •