Configurare un progetto Apache Maven - AWS SDK for Java 2.x

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

Configurare un progetto Apache Maven

Puoi usare Apache Maven per configurare e creare AWS SDK for Java progetti o per creare l'SDK stesso.

Prerequisiti

Per utilizzare AWS SDK for Java con Maven, dovrai disporre di quanto segue:

Creare un progetto Maven

Per creare un progetto Maven dalla riga di comando, esegui il seguente comando da un terminale o da una finestra del prompt dei comandi.

mvn -B archetype:generate \ -DarchetypeGroupId=software.amazon.awssdk \ -DarchetypeArtifactId=archetype-lambda -Dservice=s3 -Dregion=US_WEST_2 \ -DarchetypeVersion=2.X.X \ -DgroupId=com.example.myapp \ -DartifactId=myapp
Nota

Sostituisci com.example.myapp con lo spazio dei nomi del pacchetto completo dell'applicazione. Sostituisci anche myapp con il nome del tuo progetto. Questo sarà il nome della directory per il progetto.

Per utilizzare la versione più recente dell'archetipo, sostituisci 2.X.X con la versione più recente di Maven central.

Questo comando crea un progetto Maven utilizzando l'archetype templating toolkit. L'archetipo genera lo scaffolding per un progetto di gestione delle funzioni. AWS Lambda Questo archetipo di progetto è preconfigurato per la compilazione con Java SE 8 e include una dipendenza dalla versione dell'SDK for Java 2.x specificata con. -DarchetypeVersion

Per ulteriori informazioni sulla creazione e la configurazione di progetti Maven, consulta la Guida alle operazioni di base Maven.

Configurare il compilatore Java per Maven

Se avete creato il progetto utilizzando l'archetipo del AWS Lambda progetto come descritto in precedenza, la configurazione del compilatore Java è già stata completata automaticamente.

Per verificare che questa configurazione sia presente, inizia aprendo il file pom.xml dalla cartella del progetto creata (ad esempio myapp) quando hai eseguito il comando precedente. Guarda le righe 11 e 12 per vedere l'impostazione della versione del compilatore Java per questo progetto Maven e l'inclusione richiesta del plugin del compilatore Maven sulle righe 71-75.

<project> <properties> <maven.compiler.source>1.8</maven.compiler.source> <maven.compiler.target>1.8</maven.compiler.target> </properties> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>${maven.compiler.plugin.version}</version> </plugin> </plugins> </build> </project>

Se crei il tuo progetto con un archetipo diverso o utilizzando un altro metodo, devi assicurarti che il plugin del compilatore Maven faccia parte della build e che le sue proprietà di origine e destinazione siano entrambe impostate su 1.8 nel file pom.xml.

Vedi lo snippet precedente per una modalità di configurazione di tali impostazioni richieste.

In alternativa, puoi impostare la configurazione del compilatore in linea con la dichiarazione del plugin, come segue.

<project> <build> <plugins> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <configuration> <source>1.8</source> <target>1.8</target> </configuration> </plugin> </plugins> </build> </project>

Dichiarare l'SDK come dipendenza

Per utilizzare AWS SDK for Java nel progetto, occorre dichiararla come una dipendenza nel file pom.xml del progetto.

Se avete creato il progetto utilizzando l'archetipo del progetto come descritto in precedenza, l'ultima versione dell'SDK è già configurata come dipendenza nel progetto.

L'archetipo genera una dipendenza dall'artefatto BOM (distinta dei materiali) per l'id del gruppo. software.amazon.awssdk Con un BOM, non è necessario specificare la versione Maven per le dipendenze dei singoli artefatti che condividono lo stesso ID di gruppo.

Se hai creato il tuo progetto Maven in un modo diverso, configura l'ultima versione dell'SDK per il tuo progetto assicurandoti che il file pom.xml contenga quanto segue.

<project> <properties> <aws.java.sdk.version>2.X.X</aws.java.sdk.version> </properties> <dependencyManagement> <dependencies> <dependency> <groupId>software.amazon.awssdk</groupId> <artifactId>bom</artifactId> <version>${aws.java.sdk.version}</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement> </project>

Impostare le dipendenze per i moduli SDK

Dopo aver configurato l'SDK, puoi aggiungere dipendenze per uno o più moduli AWS SDK for Java da utilizzare nel progetto.

Sebbene sia possibile specificare il numero di versione per ogni componente, non è necessario perché la versione dell'SDK è già stata dichiarata nella dependencyManagement sezione utilizzando l'elemento della distinta base. Per caricare una versione diversa di un determinato modulo, specificate un numero di versione per la sua dipendenza.

Se avete creato il progetto utilizzando l'archetipo del progetto come descritto in precedenza, il progetto è già configurato con dipendenze multiple. Queste includono le dipendenze per i gestori di AWS Lambda funzioni e Amazon S3, come segue.

<project> <dependencies> <dependency> <groupId>software.amazon.awssdk</groupId> <artifactId>s3</artifactId> <exclusions> <exclusion> <groupId>software.amazon.awssdk</groupId> <artifactId>netty-nio-client</artifactId> </exclusion> <exclusion> <groupId>software.amazon.awssdk</groupId> <artifactId>apache-client</artifactId> </exclusion> </exclusions> </dependency> <dependency> <groupId>software.amazon.awssdk</groupId> <artifactId>url-connection-client</artifactId> </dependency> <dependency> <groupId>com.amazonaws</groupId> <artifactId>aws-lambda-java-core</artifactId> <version>${aws.lambda.java.version}</version> </dependency> </dependencies> </project>
Nota

Nell'pom.xmlesempio precedente, le dipendenze provengono da diverse s. groupId La s3 dipendenza proviene dasoftware.amazon.awssdk, mentre la aws-lambda-java-core dipendenza proviene da. com.amazonaws La configurazione della gestione delle dipendenze BOM influisce sugli artefatti disoftware.amazon.awssdk, quindi è necessaria una versione per l'artefatto. aws-lambda-java-core

Per lo sviluppo di gestori di funzioni Lambda utilizzando l'SDK for Java aws-lambda-java-core 2.x, è la dipendenza corretta. Tuttavia, se l'applicazione deve gestire le risorse Lambda, l'utilizzo di operazioni come listFunctions deleteFunctioninvokeFunction,createFunction, e richiede la seguente dipendenza.

<groupId>software.amazon.awssdk</groupId> <artifactId>lambda</artifactId>

Aggiungi i moduli al tuo progetto per le Servizio AWS funzionalità necessarie al tuo progetto. I moduli (dipendenze) gestiti dalla AWS SDK for Java BOM sono elencati nell'archivio centrale di Maven.

Nota

Puoi esaminare il file pom.xml da un esempio di codice per determinare di quali dipendenze hai bisogno per il tuo progetto. Ad esempio, se sei interessato alle dipendenze per il servizio DynamoDB, guarda questo esempio dal AWS Code Examples Repository su. GitHub (Cerca il pom.xml file in /javav2/example_code/dynamodb.)

Creare l'intero SDK nel progetto

Per ottimizzare l’applicazione, ti consigliamo di inserire solo i componenti necessari anziché tutto l'SDK. Tuttavia, per costruire l'intero AWS SDK for Java nel tuo progetto, dichiaralo nel tuo file pom.xml, come segue.

<project> <dependencies> <dependency> <groupId>software.amazon.awssdk</groupId> <artifactId>aws-sdk-java</artifactId> <version>2.X.X</version> </dependency> </dependencies> </project>

Creare il progetto

Dopo aver configurato il file pom.xml, puoi usare Maven per creare il tuo progetto.

Per creare il tuo progetto Maven dalla riga di comando, apri un terminale o una finestra del prompt dei comandi, vai alla directory del progetto (ad esempio myapp), inserisci o incolla il seguente comando, quindi premi Enter o Invio.

mvn package

Viene così creato un singolo file .jar (JAR) nella directory target (ad esempio, myapp/target). Questo file JAR contiene tutti i moduli SDK specificati come dipendenze nel file pom.xml.