Umgebungsvariablen unter Windows XP

soeppelkan

Mitglied
Hallo, ich habe unter Windows XP folgendes versucht, um eine Umgebungsvariable für javac.exe, zu setzen.

cwtu-n7-81e7.jpg


Code:
javac.exe
befindet sich in dem Ordner
Code:
C:\Programme\Java\jdk1.7.0_01\bin
.
Der Systemvariablen habe ich den Namen
Code:
JAVA_HOME
und den Wert
Code:
C:\Programme\Java\jdk1.7.0_01\bin\javac.exe
gegeben.
Danach habe ich in der Kommandozeile
Code:
set JAVA_HOME
eingeben.
Ergebnis:
Code:
JAVA_HOME=C:\Programme\Java\jdk1.7.0_01\bin\javac.exe
Wenn ich jetzt
Code:
javac
in der Kommandozeile eingebe kommt die Fehlermeldung:
Code:
Der Befehl "javac" ist entweder falsch geschrieben oder konnte nicht gefunden werden.
Ein Neustart hat nichts geändert. Was habe ich falsch gemacht ???:L
 
Die Variable muss
Code:
C:\Programme\Java\jdk1.7.0_01\bin
nicht
Code:
C:\Programme\Java\jdk1.7.0_01\bin\javac.exe
heißen.
 
Zwei Fehler:
1. JAVA_HOME muss auf das Installationsverzeichnis zeigen und nicht auf die javac.exe
2. Damit Du javac.exe ohne Pfadangabe aufrufen kannst, musst Du die PATH Variable pflegen und zwar musst du hier den bin-Ordner der Javainstallation eintragen.
 
Das bin Verzeichnis in JAVAHOME nutzt dem Betriebssystem zunächst einmal recht wenig. Entscheiden für das Ausführen von Programmen ist die PATH Variable. Hier entweder ebenfalls das bin Verzeichnis listen oder die JAVAHOME Variable ergänzen.
 
ahh, danke euch! Habe jetzt der Variablen
Code:
JAVA_HOME
den Wert
Code:
C:\Programme\Java\jdk1.7.0_01
und der Variablen
Code:
PATH
den Wert
Code:
C:\Programme\Java\jdk1.7.0_01\bin
gegeben.


In dem Buch "Java in 21 Tagen" soll man die Umgebungsvariablen für selbst erstellte Klassen erweitern. Ist folgende Erweiterung korrekt, um Klassen aus dem Ordner
Code:
C:\dev\java\org\cadenhead\ecommerce
einzubinden?
Code:
JAVA_HOME
=
Code:
C:\Programme\Java\jdk1.7.0_01;C:\dev\java
.
Code:
PATH
=
Code:
C:\Programme\Java\jdk1.7.0_01\bin;C:\dev\java\org\cadenhead\ecommerce
 
Ich kenne das Buch nicht, aber Deinen Projektordner in den PATH oder das JAVA_HOME aufzunehmen ist völlig sinnfrei. Bei JAVA_HOME ist das sogar schlicht falsch und führt zu Fehlern.

Wichtig und bequem ist, dass java, jar, javac im PATH sind. Den Pfad zur class mit der main-Methode gibtst Du als Parameter beim Aufruf von java mit.
 
ja stimmt. Ich hab immer noch ein Problem. In dem Ordner
Code:
C:\dev\java\org\cadenhead\ecommerce
ist die Datei Item.class
Java:
package org.cadenhead.ecommerce;

import java.util.*;

public class Item implements Comparable {
    private String id;
    private String name;
    private double retail;
    private int quantity;
    private double price;

    Item(String idIn, String nameIn, String retailIn, String quanIn) {
        id = idIn;
        name = nameIn;
        retail = Double.parseDouble(retailIn);
        quantity = Integer.parseInt(quanIn);
        
        if (quantity > 400)
            price = retail * .5D;
        else if (quantity > 200)
            price = retail * .6D;
        else
            price = retail * .7D;
        price = Math.floor( price * 100 + .5 ) / 100;
    }

    public int compareTo(Object obj) {
        Item temp = (Item)obj;
        if (this.price < temp.price)
            return 1;
        else if (this.price > temp.price)
            return -1;
        return 0; 
    }

    public String getId() {
        return id;
    }

    public String getName() {
        return name;
    }

    public double getRetail() {
        return retail;
    }

    public int getQuantity() {
        return quantity;
    }

    public double getPrice() {
        return price;
    }
}

außerdem die Datei Storefront.java

Java:
package org.cadenhead.ecommerce;

import java.util.*;

public class Storefront {
    private LinkedList catalog = new LinkedList();

    public void addItem(String id, String name, String price,
        String quant) {

        Item it = new Item(id, name, price, quant);
        catalog.add(it);
    }

    public Item getItem(int i) {
        return (Item)catalog.get(i);
    }

    public int getSize() {
        return catalog.size();
    }

    public void sort() {
        Collections.sort(catalog);
    }
}

die wenn ich sie kompilieren unter anderem den Fehler ausgibt
Storefront.java:15: errror: cannot find symbol
public Item getItem(int i) {
^
symbol: class Item
location: class Sorefront


:bahnhof:
 

Zurück
Oben