2013-08-25 20 views
12

Bir Java kaynak dosyasını (*.java) farklı bir dizine derlemenin bir yolu var mı?Kaynak dosyayı farklı bir dizine derleyin?

şöyle paketim dosya yapısı ise: Ben organize klasörleri tutmak için kaynak ve sınıf dosyaları ayırmak isteyen

Mathematics -> 
    Formulas -> 
    src -> 
     // source files containing mathematical formulas... 
    bin -> 
     // class files containing mathematical formulas... 
    Problems -> 
    src -> 
     // source files containing mathematical problems... 
    bin -> 
     // class files containing mathematical problems... 

ama şu anda src klasörlerdeki tüm sınıf dosyaları kopyalamak zorunda Her derlemeden sonra bin klasörleri.

Sınıf dosyalarını javac komutunda başka bir klasöre derleyerek bu işlemi basitleştirmenin bir yolu var mı? -

+0

Hangi dizini 'bin' istiyorsunuz? –

cevap

21

Evet, kesinlikle çıkış dizinini belirtmek için -d seçeneğini kullanın: Belirttiğiniz dizin kök çıkış yapısının olduğunu

javac -d bin src/foo/bar/*.java 

Not; İlgili alt dizinler, kodunuzun paket yapısına uygun olacak şekilde otomatik olarak oluşturulacaktır.

Daha fazla ayrıntı için javac documentation'a bakın.

Bu durumda, formülleri derlemek için bir javac komutunu ve sorunları derlemek için başka bir sorun çıkarmanız gerekir; bu, problemleri derlerken sınıf yolunun bir parçası olarak formüller bin dizinini kullanıyor olabilir.

(Tek bir kaynak yapısı kullanmayı düşünebilirsiniz ancak farklı paketler düşünebilirsiniz. Sizden bu karmaşıklığı gizlemek için bir IDE kullanmayı düşünmelisiniz. Tüm bunları el ile yorucu bir hale getirmek, aslında sert olmasa bile.)