it-swarm.com.de

So ändern Sie Java_home für Eclipse/ANT

Ich versuche, eine JAR-Datei mit einem ANT-Skript zu signieren. Ich weiß, dass auf das JDK-Verzeichnis verwiesen werden muss, damit jarsigner.exe ausgeführt werden kann, aber wenn ich Java.home echo, wird das JRE-Verzeichnis zurückgegeben. 

Dies ist kein Problem für Javac, da ich den Pfad der ausführbaren Datei einstellen kann. Aber das gibt es nicht für Signjar. 

Wie ändere ich den Java.home-Pfad? Wenn ich mit der rechten Maustaste auf MyComputer klicke, gehe zu:

Eigenschaften> Erweitert> Umgebungsvariablen

Die "PATH" -Variable ist korrekt auf das JDK (C:\program files\Java\jdk\bin) gerichtet.

Update : Die Datei signiert jetzt korrekt, nachdem die unten vorgeschlagene PATH-Variable geändert wurde. 

43
Ken

In Eclipse basiert die Variable Ant Java.home nicht auf der Windows-Umgebungsvariablen Java_HOME. Stattdessen wird das Basisverzeichnis der JRE des Projekts festgelegt. 

Um die Standard-JRE zu ändern (z. B. in ein JDK umzuwandeln), gehen Sie zu Windows-> Einstellungen ... und wählen Sie Java-> Installierte JREs .

Um nur die JRE eines einzelnen Projekts zu ändern, gehen Sie zu Projekt -> Eigenschaften und wählen Sie Java Build Path und dann die Registerkarte Libraries . Suchen Sie nach der JRE-Systembibliothek und klicken Sie darauf. Wählen Sie dann Edit und dann die gewünschte JRE (oder JDK) aus.

Wenn dies nicht funktioniert, können Sie beim Ausführen der Build-Datei Ausführen als -> Ant Build ... auswählen und auf die RegisterkarteJREklicken, separate JRE auswählen und die Option angeben JRE willst du da sein.

48
Pace

Für mich weigert sich ant offensichtlich offenbar, jegliche Konfiguration für Eclipse default, das Projekt JDK und den Vorschlag von "Ant Home Entries" zu hören.

Dies funktioniert jedoch:

Menu "Run" -> "External Tools" -> "External Tools Configuration".
  Goto the node "Ant build", choose the ant buildfile in question.
     Choose tab "JRE".
        Select e.g. "Run in same JRE as workspace", or whatever you want.
14
stolsvik

Unter Windows müssen Sie folgen:

Start -> Systemsteuerung -> System -> Erweitert -> Umgebungsvariablen.

... und Sie müssen Java_HOME (was sich von der von Ihnen genannten PATH-Variablen unterscheidet) festlegen, um auf das JDK-Home-Verzeichnis zu verweisen, nicht auf das Unterverzeichnis bin. z.B. "C:\Programme\Java\jdk".

11
Adamski

Um die Java-Version auf Ant in Eclipse zu erzwingen:

Verwenden Sie die Option RunAs für die Ant-Datei und wählen Sie dann External Tool Configuration inJRE, um Ihre JDK/JRE-Version festzulegen, die Sie verwenden möchten.

7
Mahran ALSHIEKH

Stellen Sie außerdem sicher, dass Sie Ihre Umgebungsvariable Java_HOME festlegen. Tatsächlich setze ich normalerweise Java_HOME und stelle dann die Zeichenfolge "%Java_HOME%\bin" der Umgebungsvariable PATH des Systems voran, so dass, falls Java aktualisiert oder geändert werden soll, nur die Variable Java_HOME geändert werden muss.

Stellen Sie sicher, dass Sie alle Eingabeaufforderungsfenster schließen oder Anwendungen öffnen, die möglicherweise Ihre Umgebungsvariablen lesen. Änderungen an Umgebungsvariablen werden normalerweise erst bemerkt, wenn eine Anwendung neu gestartet wird.

4
Adam Batkin

Sie sollten nicht nur überprüfen, ob sich die ausführbaren Dateien in Ihrem Pfad befinden, sondern auch, dass Ant tools.jar in Ihrem JDK finden kann. Der einfachste Weg, dies zu beheben, besteht darin, den tools.jar zum Ant-Klassenpfad hinzuzufügen:

 Adding tools.jar to Ant classpath.

2
vallismortis

Habe heute Morgen ein paar Stunden mit diesem Problem zu tun. Ich bin wahrscheinlich die am wenigsten technische Person in diesen Foren. Wie der Anforderer überlebte ich jede Erinnerung daran,% Java_HOME% festzulegen, und biss mir jedes Mal auf die Zunge, wenn ich diesen nicht leuchtenden Rat sah. Schließlich überlegte ich, ob die JRE meines Laptops Versionen vor meinem JDK war (da JREs regelmäßig automatisch aktualisiert werden) und ich das neueste JDK installierte. Der Unterschied war geringfügig und ging aus Wochen verschiedener Versionen hervor. Ich habe mit diesem Fehler in jdk v 1.0865 angefangen. Die JRE betrug 1,0866. Nach der Installation hatte ich jdk v1.0874 und das entsprechende JRE. Zu diesem Zeitpunkt wies ich die Eclipse JRE an, sich auf mein JDK zu konzentrieren, und alles war gut. Mein Ausdruck von Java.home spiegelte sogar die korrekte JRE wider. 

So viel Feedback wiederholte die falschen Antworten. Ich würde dringend darum bitten, dass die Leute das Feedback von anderen lesen, um unnötige Redundanzen zu vermeiden. Pass auf dich auf, SG

1
Shane

Gehen Sie zu Umgebungsvariable und fügen Sie hinzu 

Java_HOME=C:\Program Files (x86)\Java\jdk1.6.0_37

to jdk path (Schließfachordner ausschließen)
Setzen Sie Java_HOME jetzt in den Pfad als PATH=%Java_HOME%\bin;.
Dadurch wird der Java-Pfad für alle Anwendungen festgelegt, die Java verwenden.

Für ANT verwenden, 

ANT_HOME=C:\Program Files (x86)\Apache-ant-1.8.2\bin;

und fügen Sie ANT_HOME in PATH ein, so dass der Pfad wie folgt aussieht: PATH=%Java_HOME%\bin;%ANT_HOME%;

0
AKD

Umgebungsvariablen setzen

Dies ist der Teil, den ich immer vergesse. Da Sie Ant manuell installieren, müssen Sie die Umgebungsvariablen auch manuell festlegen.

Für Windows XP : Um Umgebungsvariablen unter Windows XP festzulegen, klicken Sie mit der rechten Maustaste auf Arbeitsplatz und wählen Sie Eigenschaften. Wechseln Sie dann zur Registerkarte Erweitert und klicken Sie unten auf die Schaltfläche Umgebungsvariablen.

Für Windows 7 : Um Umgebungsvariablen unter Windows 7 festzulegen, klicken Sie mit der rechten Maustaste auf Computer und wählen Sie Eigenschaften. Klicken Sie auf Erweiterte Systemeinstellungen und klicken Sie unten auf die Schaltfläche Umgebungsvariablen.

Der Dialog für Windows XP und Windows 7 ist derselbe. Stellen Sie sicher, dass Sie nur mit Systemvariablen und nicht mit Benutzervariablen arbeiten.

Die einzige Umgebungsvariable, die Sie unbedingt benötigen, ist Java_HOME . Diese teilt Ant den Speicherort Ihrer JRE mit. Wenn Sie das JDK installiert haben, ist dies wahrscheinlich c:\Program Files\Java\jdk1.x.x\jre unter Windows XP und c:\Program Files(x86)\Java\jdk1.x.x\jre unter Windows 7. Sie werden feststellen, dass beide Leerzeichen in ihren Pfaden enthalten, was zu einem Problem führt. Sie müssen den entstellten Namen [3] anstelle des vollständigen Namens verwenden. Verwenden Sie für Windows XP C:\Progra~1\Java\jdk1.x.x\jre und für Windows 7 C:\Progra~2\Java\jdk1.6.0_26\jre, wenn es im Ordner Programme (x86) installiert ist (verwenden Sie ansonsten dasselbe wie Windows XP).

Dies allein reicht aus, um Ant zum Laufen zu bringen, aber aus Gründen der Bequemlichkeit ist es eine gute Idee, den binären Pfad von Ant der VariablePATHhinzuzufügen. Diese Variable ist eine durch Semikolons getrennte Liste von Verzeichnissen, in denen nach ausführbaren Dateien gesucht wird. Um ant in einem beliebigen Verzeichnis ausführen zu können, muss Windows sowohl den Speicherort für das Ant-Binary als auch für das Java-Binary kennen. Sie müssen beide am Ende der VariablenPATHhinzufügen. Bei Windows XP werden Sie wahrscheinlich Folgendes hinzufügen:

;c:\Java\ant\bin;C:\Progra~1\Java\jdk1.x.x\jre\bin

Für Windows 7 sieht es ungefähr so ​​aus:

;c:\Java\ant\bin;C:\Progra~2\Java\jdk1.x.x\jre\bin

Erledigt

Wenn Sie dies getan haben und die Änderungen übernommen haben, müssen Sie eine neue Eingabeaufforderung öffnen, um zu sehen, ob die Variablen richtig eingestellt sind. Sie sollten in der Lage sein, ant einfach laufen zu lassen und so etwas zu sehen:

Buildfile: build.xml does not exist!
Build failed
0
Shuvo Biswas

Wenn Sie Eclipse verwenden, versuchen Sie Folgendes:

  • Klicken Sie mit der rechten Maustaste auf die Ant-Build-Datei und wählen Sie "Eigenschaften".
  • Klicken Sie auf "Run/Debug Settings" und dann auf die Startkonfigurationsdatei. Sie sollten es dann bearbeiten können.
  • Nachdem Sie auf "Bearbeiten" geklickt haben, sollte ein neues Fenster mit der Registerkarte "Eigenschaften" angezeigt werden, in dem eine Liste der Eigenschaften von Ant-Builds angezeigt wird. In der Liste befindet sich eine Eigenschaft "Java.home". Stellen Sie sicher, dass es sich auf den richtigen Pfad bezieht.
0
ezzadeen