2012-03-29 6 views
2

Einige unserer Entwickler bevorzugen Eclipse und einige bevorzugen Netbeans. Wir wollen dieselbe Dateihierarchie für beide, so dass sie in Subversion unter einem Verzeichnis bleibt.Verwendung der gleichen Java-Hierarchie für Eclipse und Netbeans

Die Verzeichnisstruktur ist:

src 
| +main 
| | +java 
| | +com 
| |  +mycompany 
| |  +utils 
| |   +Bar.java 
| |   +Foo.java 
| +test 
| | +java 
| | +com 
| |  +mycompany 
| |  +utils 
| |   +BarTest.java 
| |   +FooTest.java 
bin 
| +com 
| | +mycompany 
| | +utils 
| |  +Bar.class 
| |  +Foo.class 

Dies nicht nur in Netbeans funktioniert gut, aber es scheint ein Standard. (http://maven.apache.org/guides/introduction/introduction-to-the-standard-directory-layout.html) Das Problem, das ich habe, ist, dass ich in Eclipse all diese Hierarchie sehen kann, aber es klagt dass die Datei Bar.java (oben), die eine Paketdeklaration hat: "Paket com.mycompany.utils;", sollte als "Paket main.java.com.mycompany.utils;" deklariert werden, was nicht das ist, was ich will . Wie kann ich Eclipse so konfigurieren, dass es diese Hierarchie erkennt?

Danke,
Chelmite

Antwort

0

Eclipse nicht die richtige Klassenhierarchie zu erkennen, weil die Definition von Quellordnern in seinen Metadatendateien ist, die Sie wahrscheinlich nicht in SVN geprüft. Da du anscheinend Maven verwendest, würde ich dir empfehlen, dass deine Entwickler m2e installieren, das Maven-Projekte nativ erkennt und handhabt, keine zusätzliche Einrichtung erforderlich.

Indigo und Helios kommen mit m2e installiert afaik.

Wenn Sie wollen manuell diese Quellbäume reparieren, dann klicken Sie einfach rechts auf das Projekt und zwei Quellordner definieren

src/main/java 
src/test/java 
+0

Wenn ich die Eigenschaften für das Projekt öffne, gehe zu Java Build Path, dann die Registerkarte Source, es zeigt meinen src-Ordner. Wenn ich auf "Bearbeiten" klicke, wenn ich "src" in "src/main" oder "src/main/java" ändere, beschwert es sich, dass der Ordner bereits existiert! – Chelmite

+0

Dieses Problem mit bereits bestehenden Ordner ist hier gelöst: http://StackOverflow.com/Questions/11976223/How-To-Deal-With-Missing-SRC-test-Java-Source-Folder-in-Android-Maven-Projekt – wilsonmichaelpatrick

0

Sie benötigen classpathentry zu bearbeiten. Versuchen Sie das Bearbeiten der .classpath Datei für Ihre Eclipse-Projekt und es so etwas wie das Ändern folgende:

<classpathentry kind="src" output="bin" path="src/main/java"/> 
+0

Ich habe versucht: Aber es beschwert sich immer noch, dass com.mycompany.utils sollte src.main.com.mycompany.utils – Chelmite

+0

Haben Sie andere Quellordner definiert? Mein .classpath sieht wie folgt aus: ' \t \t \t \t ' Das Projekt sieht wie folgt aus [this] (http://i.imgur.com/ja7S8.png) in der Paket-Explorer-Ansicht. –

0

Die Diskrepanz ist, dass Ihr Eclipse-Projekt mit src als die Wurzel des Java Source-Pfad konfiguriert ist, wenn in der Tat Sie haben zwei getrennte Quellbäume in diesem Ordner. So konfigurieren Sie es richtig:

  1. Öffnen Sie die Projekteigenschaften (via Rechtsklick)
  2. Select Java Build Path auf der linken Seite, dann die Quelle Registerkarte auf der rechten Seite
  3. entfernen src als ein Quellordner
  4. hinzufügen src/main/java und src/test/java als Quellordner

Dies teilt Eclipse mit, dass das Projekt zwei Quellordner enthält und diese zusammen in den Ordner bin kompiliert werden.

Hinweis: es ist stark in SVN zu überprüfen in den .project und .classpath Dateien und der Ordner s .setting empfohlen, so dass jeder, der das Projekt in Eclipse checkt automatisch diese Konfiguration erhalten wird.

Falls gewünscht, können Sie separate Build-Ausgabeplätze für jeden Quellordner konfigurieren (anstatt beide in bin zu gehen).

Verwandte Themen