Mit javac zweite Datei compilieren ohne Erste erneut zu compilieren?

  • Themenstarter Themenstarter Aus_der_C_Ecke
  • Beginndatum Beginndatum
A

Aus_der_C_Ecke

Gast
Ich habe ein package Namens meins in dem zwei Quellcodedateien liegen.

Eine heißt z.B. MeinProgramm.java und die andere MeineHilfsFunktionen.java



MeineHilfsFunktionen.java habe ich bereits mit javac manuell compiliert, d.h. ich habe bereits eine class Datei.
Das ganze sieht dann ungefähr im Verzeichnis so aus:

Code:
meins\src\
        |    |- MeinProgramm.java
        |    |- MeineHilfsFunktion.java
        |bin\
             |- MeineHilfsFunktion.class


Wenn ich nun aber MeinProgramm.java einzeln compilieren will, dann meldet mir javac, daß er eine Funktion, die in MeineHilfsFunktion.java steht, nicht nutzen kann, also: "cannot find symbol".
Wenn ich nun aber die MeineHilfsFunktion.java zusätzlich beim javac Aufruf mitangebe, dann funktioniet das compilieren, aber das Problem dabei ist, daß die MeineHilfsFunktion.class Datei dann AFAIK noch einmal compiliert wird.

Diesen Schritt würde ich mir aber gerne sparen.
Wie kann ich den bereits fertig compilierten Java Bytecode von MeineHilfsFunktion.class trotzdem nutzen ohne diese Datei noch einmal zu erstellen?
 
Ups, da ist etwas verrutscht, so sollte es stimmen:
Code:
meins\src\
     |   |- MeinProgramm.java
     |   |- MeineHilfsFunktion.java
     |bin\
         |- MeineHilfsFunktion.class
 
was ist das Problem wenn die 2. Datei nochmals kompiliert wird ?!

Ansonsten sollte es doch gehen wenn du denn classpath auf das bin verzeichnis setzt
 
Du brachst eigentlich nicht beide angeben, dassmusst du nur, weil du wohl methoden aus der einen mit der anderen aufrufst, und er dazu die methodensignaturen braucht. -> vgl Header in c/c++
Wenn du nun den Classpath richtig setzt, findet der die von selber.
 

Zurück
Oben