![]() |
![]() |
|
|
|||||||
| Programmierung Rat & Tat für Programmierer |
![]() |
|
|
Themen-Optionen | Ansicht |
|
|
#1 |
|
Veteran
![]() Registriert seit: 09.07.2000
Ort: wien
Beiträge: 275
|
hi pro-gs!
habe ein grundlegendes (verständnis?)problem beim händischen (ohne eclipse) compilieren folgenden testbeispieles: (kurzerklärung: T1 ruft eine methode getXX aus T3 auf, wobei T3 die Klasse T2 implementiert; T1 in package test; T2 & T3 in package test.testest) verwende Windows XP, javac-version: 1.5.0_02 Code:
T1.java:
package test;
public class T1 {
public static void main(String [] args) throws Exception {
test.testest.T2 x1 = new test.testest.T3();
String x2 = x1.getXX();
System.out.println("x1.getXX = " + x2 + " !");
}
}
T2.java:
package test.testest;
public interface T2 {
public String getXX();
}
T3.java:
package test.testest;
public class T3 implements T2 {
public String getXX() {
System.out.println("+++T3.getXX+++");
return ("XX");
}
}
(P) test ..+ (J) T1.java (P) test.testest ..+ (J) T2.java ..+ (J) T3.java (P) steht für das Package-Symbol, (J) für Java-File Ausgabe von Run T1 in Eclipse wie erwartet: Code:
+++T3.getXX+++ x1.getXX = XX ! Code:
12:11 242 T1.java 13:42 <DIR> testest dir von C:\test\testest 13:42 <DIR> . 13:42 <DIR> .. 13:47 79 T2.java 13:47 166 T3.java C:\test\testest> javac T2.java ---> keine Meldung, T2.class erstellt (dh also: ok) C:\test\testest> javac T3.java Code:
T3.java:3: cannot find symbol
symbol: class T2
public class T3 implements T2 {
^
1 error
C:\test> javac T1.java Code:
T1.java:5: package test.testest does not exist
test.testest.T2 x1 = new test.testest.T3();
^
T1.java:5: package test.testest does not exist
test.testest.T2 x1 = new test.testest.T3();
^
2 errors
-cp . -cp .;testest -cp c:\test\testest selbe Fehlermeldung hoffe ihr könnt mir einen tip geben wie das zu compilieren ist - danke! (die package-struktur test.testest soll so bleiben) zusatzfrage: sind die beiden packages test und test.testest irgendwie logisch/funktionell/hierarchisch verbunden oder sowieso unabhängig? mfG Dilli.nger
____________________________________
2 pi or not 2 pi |
|
|
|
|
|
#2 |
|
Veteran
![]() Registriert seit: 09.07.2000
Ort: wien
Beiträge: 275
|
Lösung gefunden:
man muss vom package-Startordner aus compilieren/ausführen (in diesem Fall C:\) Code:
C:\> javac test/testest/T2.java C:\> javac test/testest/T3.java C:\> javac test/T1.java (aber nicht: javac test.T1.java) C:\> java test.T1 (oder auch: java test/T1) edit: aha mittels -cp C:\ .. alles klar! (aber sehr abschreckend wie java einen gängelt ![]()
____________________________________
2 pi or not 2 pi |
|
|
|
![]() |
| Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1) | |
|
|