Qual è la struttura di directory del progetto per una singola applicazione Java SE?

Quello che è lo standard struttura di directory del progetto di un autonomo Java SE (a Linea di Comando) applicazione?

src cartella contiene tutti i miei .java file correttamente pacchetti organizzati. Diverso da quello che mi hanno bin cartella che conterrà il mio .class file.

Ho Proprietà di file e file di configurazione XML nel mio progetto. In quale cartella devo metterli? Devo creare un pacchetto denominato com.myproject.config e posto tutte le .xml file di configurazione in che?

Voglio dipendente vasi per essere imballati insieme con il mio pacchetto finale. Quindi devo creare una cartella (per esempio il nome lib) per contenere tutti questi .jar file?

  • Si può fare come le descrivi. Non c’è nessun vincolo né meglio accettato.
  • Molto di questo dipende dal tool di build/IDE che si sta utilizzando. Si noti che, se l’imballaggio è tutto su di te, teoricamente, è possibile utilizzare praticamente qualsiasi struttura, mentre un IDE in genere impostare una struttura che è più comunemente usato. Come quello di “creare un pacchetto che si chiama com.myproject.config” Sì, che sembra ragionevole.
  • Penso che l’utilizzo di Maven per costruire il vostro progetto è una buona opzione.
  • BTW – è questa questione davvero di più su come distribuzione l’costruito applicazione per l’utente finale? Che tipo di domanda è? (per esempio il Desktop, da riga di comando, qualcosa destinata per il vassoio di sistema..?)
  • Applicazione da Riga di comando
  • Ho modificato “linea di comando” in questione, ma sono ancora non è chiara la risposta alla mia prima domanda. “è la domanda molto più come distribuzione l’costruito applicazione per l’utente finale?” Se non sembra che la risposta a questo è ‘utilizzare qualsiasi struttura che funziona per voi’.

InformationsquelleAutor HariShankar | 2012-06-12



4 Replies
  1. 17

    Mi sento di raccomandare a bastone con default Maven layout ( e anche usare maven come strumento di compilazione )

    Produttivo classi /risorse:

    src/main/java
    src/main/resources

    Dati di Test e classi:

    src/test/java
    src/test/resources

    Maven può anche prendersi cura di un pacchetto dell’applicazione correttamente con tutto il necessario per vasetti
    ( cercare maven assemblea plugin )

  2. 4

    Comunemente struttura è la seguente:

    • src – contiene tutti i file di origine, e forse anche il seguente (potrebbe essere lontano giù la struttura di cartelle):
      • risorse – che contiene risorse quali file di proprietà
      • config – tutto config relative
    • lib – una cartella contenente le librerie, possibilmente inseriti in separata subfolderrs
    • bin – contiene le classi compilate
  3. 3

    Quanto lontano io, come sai, non c’è nessuna tale cosa come un standard di una struttura di progetto per Java se e per se. Tuttavia, vari strumenti e gli Ide (come Eclipse) hanno una struttura standard.

    Maven, un tool di build per Java, invece, ha un ben definito (default) struttura del progetto. Lì, tutti i file sorgente Java sono messi in src/main/java cartella e tutti i file di risorse (come il tuo file di configurazione) sono collocati in src/main/resources.

    Una breve introduzione di Maven, se non lo sai ancora: Maven in 5 Minuti


    Per quanto riguarda la tua domanda sulle confezioni con le dipendenze, qui è un stato tagliato da uno dei miei POM Maven file che utilizza il Assemblea Plugin per creare un file JAR con tutte le dipendenze inclusi:

    <plugin>
        <artifactId>maven-assembly-plugin</artifactId>
        <configuration>
            <descriptorRefs>
                <descriptorRef>jar-with-dependencies</descriptorRef>
            </descriptorRefs>
            <archive>
                <manifest>
                    <mainClass>...</mainClass>
                </manifest>
            </archive>
        </configuration>
        <executions>
            <execution>
                <id>make-assembly</id>
                <phase>package</phase>
                <goals>
                    <goal>single</goal>
                </goals>
            </execution>
        </executions>
    </plugin>
  4. 1

    src/com.enterprise_name.nome_progetto. Main.java (la classe principale)

    src/com.enterprise_name.nome_progetto.modello.(qui tutte le classi del modello)

    src/com.enterprise_name.nome_progetto.vista.(qui tutte le classi di visualizzazione, JFrame, Jdialog,ecc)

    src/com.enterprise_name.nome_progetto.vista.risorse.(qui tutti i file e le immagini utilizzate in vista *nota)

    src/com.enterprise_name.nome_progetto.controller.(qui tutte le classi controller)

    lib/(qui tutte le librerie esterne – non dimenticare di aggiungere costruire percorso)

    *nota se avete bisogno di qualche file di risorse (xml, file di configurazione, ecc) creare un pacchetto .risorse. nello specifico luogo in cui avete bisogno di (modello, controller, vista)

Lascia un commento