2013-02-09 19 views
14

Projemi standart Maven dizin düzeniyle Eclipse'de geliştirdim. Kaynaklar src/main/java/com/mycompany dizinindedir. Kaynak sınıflarımı main.java.com.mycompany paketine koymam gerekiyor. Ben yürütülebilir Kavanoz dosyasını oluştururken , şöyle MANIFEST.MF ana sınıf tanımlamak zorunda:maven'de main.java olmadan paket adı

Main-Class: main.java.com.mycompany.MyMainClass 

Ama maven-montaj-eklentisi veya mainClass özelliğini yapılandırmak gibi (bir çok örnek gördüm maven-jar-plugin) Bu sınıf isimleri main.java parçası olmadan belirtilir. Sadece

Main-Class: com.mycompany.MyMainClass 

ben Maven tamamen acemi olduğum bu çünkü nasıl elde edebileceğini tahmin edemezler sahip olmak istiyorum.

+0

Verilen main.java paketi, src/main/java konumuyla ilgili değil. Bu gerekiyorsa, Eclipse (m2e) vb. Içindeki konfigürasyonunuz yanlıştır. – khmarbaise

+0

Eclipse (m2e) ya da Maven gibi maven-eclipse için hiçbir eklenti kullanmamıştım, sadece komut satırından mvn ile projeler oluşturdum. – Grade

cevap

35

Maven'in varsayılan dizin düzeni, Eclipse'in yeni bir Java projesi oluştururken kullandığı düzeninden farklıdır.

Aslında oldukça basit. Yeni bir Java projesi oluşturduğunuzda, Eclipse dosya sisteminizde kaynak kodunuzu koymanız gereken 'src' adlı bir klasör oluşturur. Ayrıca, Eclipse bu klasörü bir 'kaynak klasör' olarak yapılandırır. Bu klasörde oluşturduğunuz her klasör bir Java paketini temsil edecektir.

Maven'in ne istediği biraz farklı. Maven, bir kaynak klasör olarak yapılandırılan 'java' alt klasörü ile bir 'src/main/java' klasörüne sahip olmanızı seviyor. Bu nedenle, bu java klasörü altında oluşturulan tüm klasörler Java paketlerini temsil edecektir.

Kaynak klasörlerinizi Eclipse'deki proje özelliklerinden yönetebilirsiniz. Projenizi sağ tıklayın, 'yol oluştur -> yapı yolunu yapılandır'ı seçin. Açılır pencerede 'kaynak' sekmesini açın. Şimdi, 'src' yi bir kaynak klasör olarak kaldırın ve 'src/main/java' ile değiştirin.

Artık Eclipse, paketlerinizi main.java.com.mycompany yerine com.mycompany olarak tanıyacak.

Eclipse projemi ve sınıf yol dosyalarını commmand satırından oluşturmak için her zaman maven-eclipse eklentisini kullanırım. Ben m2e'nin büyük bir hayranı değilim.

2

Eclipse kullanıyorsanız m2e'yi kullanın. Eclipse çalışma alanı, bir maven projesi için yanlış yapılandırılmış

3

Ayrıca, maven projesini güncellemeyi de deneyebilirsiniz. Projeye sağ tıklayın> Maven> Maven Project'i Güncelleyin.

İlgili konular