Database
 sql >> Database >  >> RDS >> Database

Utilizzo delle dipendenze dei moduli, parte 2

Dipendenza dal modulo si riferisce a un modulo che dipende o richiede un altro modulo. Le dipendenze dei moduli sono state introdotte nella Dichiarazione della dipendenza da altri moduli sezione nell'articolo "Sviluppare un modulo con Java 9 in Eclipse IDE, parte 1". Nel primo di due articoli, "Using Module Dependencies, Part 1", abbiamo creato due progetti Java per due moduli, un modulo principale e un modulo di dipendenza. Non avremmo potuto creare entrambi i moduli in un progetto Java perché l'IDE Eclipse non supporta più moduli in un singolo progetto. Dopo aver creato due progetti, in questo articolo di continuazione esporteremo ogni progetto in un file JAR separato. L'esportazione e l'utilizzo di un modulo come file JAR è discusso in un tutorial precedente, "Utilizzo di un modulo Java 9 come file JAR". L'aggiunta di più moduli in un singolo JAR non è attualmente supportata, ma è prevista per una futura versione Java. In questo articolo, discuteremo della configurazione dei due progetti Java e dell'esecuzione dell'applicazione del modulo principale per dimostrare la dipendenza del modulo. Questo articolo ha le seguenti sezioni:

  • Impostazione del percorso di compilazione del progetto Java principale
  • Esportazione del progetto Java principale in un file JAR
  • Esportazione del progetto Java dipendente in un file JAR
  • Aggiunta di una configurazione di esecuzione
  • Esecuzione dell'applicazione Java del modulo principale
  • Conclusione

Impostazione del percorso di compilazione del progetto Java principale

I due progetti Java precedentemente sviluppati presentano degli errori, come indicato dai contrassegni rossi nella Figura 1. Gli errori sono indicati perché i due moduli sono definiti in progetti separati e il progetto di dipendenza non è nel percorso di compilazione del progetto principale.


Figura 1: Progetti Java con errori

In questa sezione, configureremo il percorso di compilazione per il MainModule progetto per aggiungere il HelloJavaModule progetto al percorso di costruzione. Fare clic con il pulsante destro del mouse su MainModule in Esplora pacchetto e seleziona Percorso di creazione>Configura percorso di creazione , come mostrato nella Figura 2.


Figura 2: Esplora pacchetto>Percorso build>Configura percorso build

Nelle Proprietà finestra, il Percorso di build Java vengono visualizzate le impostazioni predefinite, come mostrato nella Figura 3.


Figura 3: Percorso build Java

Seleziona i Progetti scheda e seleziona Modulepath , come mostrato nella Figura 4. Fare clic su Aggiungi...


Figura 4: Percorso build Java>Progetti>Modulepath>Aggiungi...

La Selezione del progetto richiesta la finestra mostra il progetto di dipendenza HelloJavaModule , come mostrato nella Figura 5. Selezionare HelloJavaModule progetto e fare clic su OK.


Figura 5: Selezione di un progetto da aggiungere

Il Modulo HelloJava il progetto viene aggiunto a Modulepath (vedi figura 6). Fai clic su Applica e chiudi .


Figura 6: Progetto Java HelloJavaModule aggiunto a Modulepath

Gli errori e gli indicatori rossi vengono rimossi dal MainModule progetto, come mostrato nella Figura 7.


Figura 7: Errori rimossi da MainModule

Esportazione del progetto Java principale in un file JAR

Aggiunta di HelloJavaModule progetto al percorso di compilazione del MainModule il progetto rimuove solo gli errori di compilazione/tempo di compilazione. Per il runtime, dovremmo esportare ciascuno dei moduli in un file JAR e aggiungere i file JAR al percorso del modulo di runtime per quando il progetto viene eseguito. I file JAR dovrebbero essere esportati nella stessa cartella in modo da poter configurare il percorso del modulo senza fare riferimento ai moduli tra i progetti. Come accennato in precedenza, un JAR multimodulo non è ancora supportato, ma dovrebbe essere supportato in una versione successiva di Java.

Per esportare il MainModule progetto in un file JAR, fai clic con il pulsante destro del mouse su MainModule in Package Explorer e seleziona Esporta , come mostrato nella Figura 8.


Figura 8: Package Explorer>MainModule>Esporta

In Esporta finestra, seleziona Java>file JAR , come mostrato nella Figura 9, e fare clic su Avanti.


Figura 9: Esporta>Java>File JAR>Avanti

In Specifica del file JAR , seleziona la risorsa da esportare come MainModule , come mostrato nella Figura 10. Seleziona la destinazione di esportazione come MainModulemodulesmainmodule.jar . Fare clic su Avanti.


Figura 10: Specifica del file JAR

Seleziona le Opzioni di imballaggio JAR predefinite (vedi Figura 11) e fare clic su Avanti.


Figura 11: Selezione delle opzioni di imballaggio

Quindi, personalizza la Specifica del manifesto JAR , che include la selezione della classe del punto di ingresso dell'applicazione. Fai clic su Sfoglia per la Classe principale , come mostrato nella Figura 12.


Figura 12: Classe principale>Sfoglia

In Seleziona corso principale , seleziona il Modulo Principale classe nel main.module pacchetto, come mostrato nella Figura 13, e fare clic su OK.


Figura 13: Selezione della classe principale

Con la Classe principale selezionato, fare clic su Fine, come mostrato nella Figura 14.


Figura 14: JAR Esporta>Fine

Il mainmodule.jar viene esportato in MainModule/modules directory, come mostrato in Package Explorer nella Figura 15.


Figura 15: Mainmodule.jar JAR esportato

Esportazione del progetto Java dipendente in un file JAR

In questa sezione esporteremo il progetto di dipendenza HelloJavaModule in un file JAR nella stessa directory in cui viene esportato il JAR del modulo principale. Per esportare il HelloJavaModule progetto in un file JAR, fai clic con il pulsante destro del mouse in Package Explorer e seleziona Esporta (vedi Figura 16).


Figura 16: Package Explorer>HelloJavaModule>Esporta

In Esporta finestra, seleziona Java>file JAR , come mostrato nella Figura 17, e fare clic su Avanti.


Figura 17: Esporta>Java>File JAR>Avanti

In Specifica del file JAR , seleziona la risorsa da esportare come HelloJavaModule , come mostrato nella Figura 18. Seleziona la destinazione di esportazione come per il JAR del modulo principale, che è il MainModulemodules directory. Il nome del file JAR dovrebbe essere diverso ed è helloJavaModule.jar . Fare clic su Avanti.


Figura 18: Specifica del file JAR per la dipendenza JAR

Selezionare le opzioni di confezionamento JAR predefinite, come mostrato nella Figura 19, e fare clic su Avanti.


Figura 19: Selezione delle opzioni di imballaggio

Quindi, personalizza la specifica del manifesto JAR. Poiché il progetto di dipendenza non include una classe per un punto di ingresso dell'applicazione, mantieni la Classe principale campo vuoto, come mostrato nella Figura 20, e fare clic su Fine.


Figura 20: Nessuna classe principale per il progetto di dipendenza

Il helloJavaModule.jar viene esportato in MainModule/modules directory, come mostrato in Package Explorer nella Figura 21.


Figura 21: JAR esportato helloJavaModule.jar

Aggiunta di una configurazione di esecuzione

Per eseguire l'applicazione Java del modulo principale, è necessario creare una configurazione di esecuzione per il MainModule progetto. Fai clic con il pulsante destro del mouse su MainModule in Package Explorer e seleziona Proprietà , come mostrato nella Figura 22.


Figura 22: Package Explorer>MainModule>Proprietà

Nella finestra Proprietà, seleziona Impostazioni Esegui/Debug e fai clic su Nuovo... per creare una nuova configurazione di avvio, come mostrato nella Figura 23.


Figura 23: Proprietà>Esegui impostazioni di debug>Nuovo...

In Seleziona tipo di configurazione , seleziona Applicazione Java , come mostrato nella Figura 24.


Figura 24: Selezione del tipo di configurazione come applicazione Java

Nella procedura guidata di configurazione, specificare un nome (MainModuleConfig ) nel Nome campo e con il Progetto selezionato come MainModule fai clic su Cerca... per la Classe principale , come mostrato nella Figura 25.


Figura 25: Impostazione delle proprietà di configurazione di avvio

In Seleziona tipo principale , seleziona main.module.MainModule digita (vedi Figura 26) e fai clic su OK.


Figura 26: Selezione del tipo principale

Con la Classe principale selezionato, fai clic su Argomenti tab per selezionare successivamente gli argomenti della VM, come mostrato nella Figura 27.


Figura 27: Selezione della scheda Argomenti

Aggiungi i seguenti argomenti VM al campo Argomenti VM, come mostrato nella Figura 28.

--module-path modules/helloJavaModule.jar;modules/mainmodule.jar
   -m mainModule/main.module.MainModule

Il --percorso-modulo arg imposta il percorso del modulo sui due JAR per i due moduli. Il -m arg imposta il modulo. Fai clic su Applica , come mostrato nella Figura 28.


Figura 28: Applicazione delle impostazioni di configurazione dell'esecuzione

Fare clic su OK, come mostrato nella Figura 29, per completare la configurazione dell'esecuzione.


Figura 29: Completamento della configurazione dell'esecuzione

Una nuova configurazione di esecuzione, MainModuleConfig , viene creato, come mostrato nella Figura 30. Fare clic su Applica e chiudi nella finestra Proprietà.


Figura 30: Applicazione delle proprietà per il progetto MainModule

Esecuzione dell'applicazione Java del modulo principale

Successivamente, verificheremo se il modulo principale richiama il modulo di dipendenza eseguendo l'applicazione del modulo principale. Fai clic con il pulsante destro del mouse su MainModule.java in Package Explorer e seleziona Esegui come>Applicazione Java (vedi Figura 31).


Figura 31: Package Explorer>MainModule>Esegui come>Applicazione Java

L'output dell'applicazione Java viene visualizzato nella Console , come mostrato nella Figura 32. Il messaggio "Hello from" dal modulo principale è combinato con il messaggio "Exported Java Module!" dal modulo di dipendenza per emettere il messaggio "Hello from Exported Java Module!".


Figura 32: Uscita console

Conclusione

In due articoli, abbiamo discusso dell'utilizzo delle dipendenze dei moduli in Java 9.