SORU
8 Temmuz 2011, Cuma


belirli bir dizin altındaki tüm java dosyaları derlemek için javac seçeneği yinelemeli olarak

Javac derleyici projemde java dosyaları derlemek için kullanıyorum. Dosyaları bu şekilde birkaç paket üzerinde dağıtılır: com.vistas.util, , *, *com.vistas.converter*6 7*.

Bu paketlerin her biri birkaç java dosyaları var. Bu gibi javac kullanıyorum:

javac com/vistas/util/*.java com/vistas/converter/*.java
      com.vistas.LineHelper/*.java com/current/mdcontect/*.java

(bir satır)

Çok fazla yol vermek yerine, nasıl işe yaramayan java com ana dizin dosyaları derlemek için derleyici sorabilir miyim?

CEVAP
7 Ocak 2012, CUMARTESİ


Ben de önermek kullanarak bir tür oluşturma aracı (Ant Maven, Karınca zaten önerilen ve daha kolay başlangıç için) ya da bir IDE bu işleme derleme (Eclipse kullanır artımlı derleme ile uzlaşma stratejisi ve seni bile gerek yok bakım için basın"" . Derleme düğmeler).

Javac Kullanarak

Eğer ihtiyacınız varsa bir deneme yapmak için daha büyük bir proje ve yok uygun yapı araçları yakınında, her zaman bir küçük hile javac sunar: classnames derlemek için belirtilen bir dosya. Sadece @ önek javac dosya adı geçmek zorunda.

Eğer projenizde *.java tüm dosyaların bir listesini oluşturabilirsiniz, kolay:

# Linux
$ find -name "*.java" > sources.txt
$ javac @sources.txt

:: Windows
> dir /s /B *.java > sources.txt
> javac @sources.txt
  • Avantajolmasıdır hızlı ve kolay bir çözüm.
  • Olumsuzlukher zaman yeni bir kaynak oluşturmak sources.txt dosyasını yeniden oluşturmak zorunda olduğunu ya da yeniden varolan birini unutmak kolay (böylece hata eğilimli) ve yorucu bir iş olan dosya.

Yapı aracını kullanarak

Uzun vadede daha iyi yazılım oluşturmak için tasarlanmış bir aracı kullanmak için.

Karınca Kullanarak

Eğer ** 15 basit bir dosya oluşturmak için bu yazılımı nasıl açıklar:

<project default="compile">
    <target name="compile">
        <mkdir dir="bin"/>
        <javac srcdir="src" destdir="bin"/>
    </target>
</project>

aşağıdaki komutu çalıştırarak tüm yazılım derleme:

$ ant
  • Avantajuzatmak kolay. standart oluşturma aracı kullanıyor
  • Olumsuzlukindirmek, kurmak ve başka bir araç öğrenirler. Bu en IDE (Eclipse ve Eclipse gibi) bu durumda bir şey indirmek zorunda kalmazsınız inşa dosyaları yazmak için büyük destek sunuyoruz unutmayın.

Maven Kullanarak

Maven bu önemsiz kurmak ve çalışmak için değil, ama öğrenme iyi kazandırıyor. Burada start a project within 5 minutes büyük bir öğretici.

  • Ana avantajı(ben) için bu işler bağımlılıkları da bu yüzden gerek yok indirmek artık Jar dosyaları ve yönetmek onlar tarafından el ve buldum daha kullanışlı bina, paketleme ve test daha büyük projeler.
  • Olumsuzlukbu bir dik bir öğrenme eğrisi, ve eğer Maven eklentileri gibi göstermemek hatalar :-) Başka bir şey olduğunu çok araçlar da ameliyat ile Maven depoları (Sbt Scala Ivy Karınca Graddle Groovy).

Bir IDE kullanarak

Ne geliştirme verimliliği artırmak olabilir. Birkaç açık kaynak alternatifler (Eclipse NetBeans gibi eski tercih ederim) ve çok popüler ve güçlü olan bile ticari olanlar (IntelliJ gibi) vardır.

Tüm komut satırı şeyler ile uğraşmak zorunda değilsiniz, bu yüzden arka planda proje yönetmek. Ancak, her zaman kullanışlı, eğer biliyorsanız geliyoraslında olurarka planını yani aşağı ClassNotFoundException gibi ocassional hataları AVI olabilir.

Ek bir not

Daha büyük projeler için, her zaman bir IDE kullanmak için tavsiye edilirvebir aracı inşa. Eski ikinci Olası proje ile farklı IDE kullanmak için (örneğin, Maven mvn eclipse:eclipse basit bir komut ile Tutulması proje tanımlayıcıları oluştur) yapar iken verimliliğinizi artırır. Ayrıca, tek bir satır komut ile test inşa edilebilir bir proje olması kolay sürekli entegrasyon sunucu yeni arkadaşları ve tanıtmak için örneğin. Çocuk oyuncağı :-)

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Call Me Howard

    Call Me Howa

    18 AĞUSTOS 2012
  • CNNMoney

    CNNMoney

    16 Kasım 2006
  • dirkgently1

    dirkgently1

    13 NİSAN 2006