Puede modificar el entorno de tiempo de ejecución que utiliza su proyecto por una nueva versión actualizando la sección runtime-versions
del archivo de especificación de compilación. Los siguientes ejemplos muestran cómo se especifican las versiones 8 y 11 de Java.
-
Una sección
runtime-versions
que especifica la versión 8 de Java:phases: install: runtime-versions: java: corretto8
-
Una sección
runtime-versions
que especifica la versión 11 de Java:phases: install: runtime-versions: java: corretto11
Los siguientes ejemplos muestran cómo especificar diferentes versiones de Python utilizando la imagen de Ubuntu estándar 5.0 o la imagen de Amazon Linux 2 estándar 3.0:
-
Una sección de
runtime-versions
que especifica Python versión 3.7:phases: install: runtime-versions: python: 3.7
-
Una sección de
runtime-versions
que especifica Python versión 3.8:phases: install: runtime-versions: python: 3.8
Esta muestra presenta un proyecto que comienza con el tiempo de ejecución de la versión 8 de Java y, a continuación, se actualiza al tiempo de ejecución de la versión 10 de Java.
-
Descargue e instale Maven. Para obtener información, consulte Downloading Apache Maven
e Installing Apache Maven en el sitio web de Apache Maven. -
Cambie a un directorio vacío del equipo o instancia local y, a continuación, ejecute este comando Maven.
mvn archetype:generate "-DgroupId=com.mycompany.app" "-DartifactId=ROOT" "-DarchetypeArtifactId=maven-archetype-webapp" "-DinteractiveMode=false"
Si el comando se ejecuta correctamente, se creará esta estructura de directorios y archivos.
. └── ROOT ├── pom.xml └── src └── main ├── resources └── webapp ├── WEB-INF │ └── web.xml └── index.jsp
-
Cree un archivo denominado
buildspec.yml
con el siguiente contenido. Guarde el archivo en el directorio(root directory name)
/my-web-appversion: 0.2 phases: install: runtime-versions: java: corretto8 build: commands: - java -version - mvn package artifacts: files: - '**/*' base-directory: 'target/my-web-app'
En el archivo buildspec:
-
La sección
runtime-versions
especifica que el proyecto utiliza la versión 8 del tiempo de ejecución de Java. -
El comando
- java -version
muestra la versión de Java que utiliza su proyecto cuando se compila.
La estructura de archivos debe ser como la siguiente.
(root directory name)
└── my-web-app ├── src │ ├── main │ ├── resources │ └── webapp │ └── WEB-INF │ └── web.xml │ └── index.jsp ├── buildspec.yml └── pom.xml -
-
Cargue el contenido del directorio
my-web-app
en un bucket de entrada de S3 o en un repositorio de CodeCommit, GitHub o Bitbucket.importante
No cargue
o(root directory name)
, solo los directorios y archivos incluidos en(root directory name)
/my-web-app
.(root directory name)
/my-web-appSi utiliza un bucket de entrada de S3, no olvide crear un archivo ZIP que contenga la estructura de directorios y los archivos para cargarlo después en el bucket de entrada. No añada
o(root directory name)
al archivo ZIP, solo los directorios y archivos incluidos en(root directory name)
/my-web-app
.(root directory name)
/my-web-app -
Abra la consola de AWS CodeBuild en https://console.aws.amazon.com/codesuite/codebuild/home
. -
Cree un proyecto de compilación. Para obtener más información, consulte Creación de un proyecto de compilación (consola) y Ejecutar una compilación (consola). Deje todas las opciones con sus valores predeterminados, excepto las siguientes opciones.
-
Para Environment (Entorno):
-
En Environment image (Imagen de entorno), elija Managed image (Imagen administrada).
-
En Operating system (Sistema operativo), elija Amazon Linux 2.
-
En Runtime(s) (Tiempo de ejecución), elija Standard (Estándar).
-
En Imagen, elija aws/codebuild/amazonlinux2-x86_64-standard:4.0.
-
-
-
Seleccione Iniciar la compilación.
-
En Build configuration (Configuración de la compilación), acepte los valores predeterminados y elija Start build (Comenzar compilación).
-
Una vez finalizada la compilación, consulte la salida de compilación en la pestaña Build logs (Registros de compilación). Debería ver una salida similar a esta:
[Container] Date Time Phase is DOWNLOAD_SOURCE [Container] Date Time CODEBUILD_SRC_DIR=/codebuild/output/src460614277/src [Container] Date Time YAML location is /codebuild/output/src460614277/src/buildspec.yml [Container] Date Time Processing environment variables [Container] Date Time Selecting 'java' runtime version 'corretto8' based on manual selections... [Container] Date Time Running command echo "Installing Java version 8 ..." Installing Java version 8 ... [Container] Date Time Running command export JAVA_HOME="$JAVA_8_HOME" [Container] Date Time Running command export JRE_HOME="$JRE_8_HOME" [Container] Date Time Running command export JDK_HOME="$JDK_8_HOME" [Container] Date Time Running command for tool_path in "$JAVA_8_HOME"/bin/* "$JRE_8_HOME"/bin/*;
-
Actualice la sección
runtime-versions
con la versión 11 de Java:install: runtime-versions: java: corretto11
-
Después de guardar el cambio, ejecute la compilación de nuevo y consulte la salida de compilación. Debería ver que la versión instalada de Java es la 11. Debería ver una salida similar a esta:
[Container] Date Time Phase is DOWNLOAD_SOURCE [Container] Date Time CODEBUILD_SRC_DIR=/codebuild/output/src460614277/src [Container] Date Time YAML location is /codebuild/output/src460614277/src/buildspec.yml [Container] Date Time Processing environment variables [Container] Date Time Selecting 'java' runtime version 'corretto11' based on manual selections... Installing Java version 11 ... [Container] Date Time Running command export JAVA_HOME="$JAVA_11_HOME" [Container] Date Time Running command export JRE_HOME="$JRE_11_HOME" [Container] Date Time Running command export JDK_HOME="$JDK_11_HOME" [Container] Date Time Running command for tool_path in "$JAVA_11_HOME"/bin/* "$JRE_11_HOME"/bin/*;