¿Eres un desarrollador que a menudo prueba aplicaciones en diferentes SDK? ¡Tengo una buena noticia para ti! SDKMAN es una herramienta CLI que lo ayuda a administrar fácilmente múltiples kits de desarrollo de software en Linux. Proporciona una manera conveniente de instalar, cambiar, enumerar y eliminar candidatos. Con SDKMAN, podemos administrar fácilmente versiones paralelas de múltiples SDK. Permite a los desarrolladores instalar kits de desarrollo de software para JVM como Java, Groovy, Scala, Kotlin y Ceylon. También se admiten Ant, Gradle, Grails, Maven, SBT, Spark, Spring Boot, Vert.x y muchos otros. SDKMAN es una utilidad gratuita, ligera y de código abierto escrita en Intento .
Instalar SDKMAN en Linux
Instalar SDKMAN es trivial. Primero, asegúrese de haber instalado Código Postal y abrir la cremallera aplicaciones Está disponible en los repositorios predeterminados de la mayoría de las distribuciones de Linux. Por ejemplo, para instalar unzip en sistemas basados en Debian , simplemente ejecute:
$ sudo apt-get install zip unzip
Luego, instale SDKMAN usando el comando:
$ curl -s "https://get.sdkman.io" | bash
Es así de simple. Este comando instalará SDKMAN en $HOME/.sdkman ubicación.
Salida de muestra:
-+syyyyyyys: `/yho:` -yd. `/yh/` +m. .oho. hy .` .sh/` :N` `-/o` `+dyyo:. .yh:` `M- `-/osysoym :hs` `-+sys: hhyssssssssy+ .sh:` `N: ms/-`` yy.yh- -hy. `.N-````````+N. `od/` `N- -/oM- ddd+` `sd: hNNm -N: :do` .M. dMMM- `ms. /d+` `NMMs `do .yy- :N` ```mMMM. - -hy. /MMM: yh `+d+` `:/oo/` `-/osyh/ossssssdNMM` .sh: yMMN` /m. -dh- :ymNMMMMy `-/shmNm-`:N/-.`` `.sN /N- `NMMy .m/ `oNs` -hysosmMMMMydmNmds+-.:ohm : sd` :MMM/ yy .hN+ /d: -MMMmhs/-.` .MMMh .ss+- `yy` sMMN` :N. :mN/ `N/ `o/-` :MMMo +MMMN- .` `ds mMMh do /NN/ `N+....--:/+oooosooo+:sMMM: hMMMM: `my .m+ -MMM+ :N. /NMo -+ooooo+/:-....`...:+hNMN. `NMMMd` .MM/ -m: oMMN. hs -NMd` :mm -MMMm- .s/ -MMm. /m- mMMd -N. `mMM/ .- /MMh. -dMo -MMMy od. .MMMs..---yh +MMM. sNo`.sNMM+ :MMMM/ sh`+MMMNmNm+++- mMMM- /--ohmMMM+ :MMMMm. `hyymmmdddo MMMMh. ```` `-+yy/`yMMM/ :MMMMMy -sm:.``..-:-.` dMMMMmo-.``````..-:/osyhddddho. `+shdh+. hMMM: :MmMMMM/ ./yy/` `:sys+/+sh/ .dMMMMMMmdddddmmNMMMNNNNNMMMMMs sNdo- dMMM- `-/yd/MMMMm-:sy+. :hs- /N` `/ymNNNNNNNmmdys+/::----/dMMm: +m- mMMM+ohmo/.` sMMMMdo- .om: `sh `.-----+/.` `.-+hh/` `od. NMMNmds/ `mmy:` +mMy `:yy. /moyso+//+ossso:. .yy` `dy+:` .. :MMMN+---/oys: /+m: `.-:::-` /d+ +MMMMMMMNh:` +MN/ -yh. `+hddhy+. /MM+ .sh: :NMo -sh/ -NMs `/yy: .NMy `:sh+. `mMm` ./yds- `dMMMmyo:-.````.-:oymNy:` +NMMMMMMMMMMMMMMMMms:` -+shmNMMMNmdy+:` Now attempting installation... Looking for a previous installation of SDKMAN... Looking for unzip... Looking for zip... Looking for curl... Looking for sed... Installing SDKMAN scripts... Create distribution directories... Getting available candidates... Prime the config file... Download script archive... ######################################################################## 100.0% Extract script archive... Install scripts... Set version to 5.8.3+506 ... Attempt update of interactive bash profile on regular UNIX... Added sdkman init snippet to /home/ostechnix/.bashrc Attempt update of zsh profile... Updated existing /home/ostechnix/.zshrc All done! Please open a new terminal, or run the following in the existing one: source "/home/ostechnix/.sdkman/bin/sdkman-init.sh" Then issue the following command: sdk help Enjoy!!!
Una vez completada la instalación, ejecute el siguiente comando para inicializar SDKMAN:
$ source "$HOME/.sdkman/bin/sdkman-init.sh"
Si desea instalarlo en una ubicación personalizada de su elección que no sea $HOME/.sdkman por example /usr/local/ hacer:
$ export SDKMAN_DIR="/usr/local/sdkman" && curl -s "https://get.sdkman.io" | bash
Asegúrese de que su usuario tenga derechos de acceso completo en esta carpeta.
Finalmente, verifique si la instalación se realizó correctamente usando el comando:
$ sdk version
Salida de muestra:
==== BROADCAST ================================================================= * 2020-06-27: sbt 1.3.13 released on SDKMAN! #scala * 2020-06-26: Micronaut 2.0.0 released on SDKMAN! #micronautfw * 2020-06-22: Micronaut 2.0.0.RC2 released on SDKMAN! #micronautfw ================================================================================ SDKMAN 5.8.3+506
¡Felicidades! Se ha instalado SDKMAN. Avancemos y veamos cómo instalar y administrar los SDK.
Administre varios kits de desarrollo de software con SDKMAN
Enumere todos los kits de desarrollo de software (SDK) disponibles
Para ver la lista de todos los candidatos disponibles (SDK), ejecute:
$ sdk list
Salida de muestra:
================================================================================ q-quit /-search down j-down ?-search up k-up h-help -------------------------------------------------------------------------------- Ant (1.10.1) https://ant.apache.org/ Apache Ant is a Java library and command-line tool whose mission is to drive processes described in build files as targets and extension points dependent upon each other. The main known usage of Ant is the build of Java applications. Ant supplies a number of built-in tasks allowing to compile, assemble, test and run Java applications. Ant can also be used effectively to build non Java applications, for instance C or C++ applications. More generally, Ant can be used to pilot any type of process which can be described in terms of targets and tasks. $ sdk install ant -------------------------------------------------------------------------------- AsciidoctorJ (2.3.1) https://asciidoctor.org/ AsciidoctorJ is the official library for running Asciidoctor on the JVM. Using AsciidoctorJ, you can convert AsciiDoc content or analyze the structure of a parsed AsciiDoc document from Java and other JVM languages. :
Como puede ver, SDKMAN enumera un candidato a la vez junto con la descripción del candidato, el sitio web oficial y el comando de instalación. Presione la tecla ENTER para listar los siguientes candidatos. Para close eso, presione q .
Instalar un nuevo SDK
Para instalar un SDK, por example Java JDK, ejecute:
$ sdk install java
Salida de muestra:
Downloading: java 11.0.7.hs-adpt In progress... ################################################################################################################################################################### 100.0%################################################################################################################################################################### 100.0% Repackaging Java 11.0.7.hs-adpt... Done repackaging... Installing: java 11.0.7.hs-adpt Done installing! Setting java 11.0.7.hs-adpt as default.
Acabamos de instalar Java. Veamos su versión:
$ java --version openjdk 11.0.7 2020-04-14 OpenJDK Runtime Environment AdoptOpenJDK (build 11.0.7+10) OpenJDK 64-Bit Server VM AdoptOpenJDK (build 11.0.7+10, mixed mode)
Si ya hay varios SDK presentes, se le preguntará si desea que la versión instalada actualmente se configure como por defecto . respondiendo sí establecerá la versión actualmente instalada como predeterminada.
Instalar una versión específica de SDK
Para instalar una versión particular de un SDK, haga lo siguiente:
$ sdk install ant 1.10.1
El comando anterior instalará Ant versión 1.10.1.
Si ya tiene una instalación local de un candidato específico, puede configurarlo como versión local como se muestra a continuación.
$ sdk install groovy 3.0.0-SNAPSHOT /path/to/groovy-3.0.0-SNAPSHOT
Lista de versiones candidatas
Para enumerar las versiones de un candidato en particular:
$ sdk list ant
Salida de muestra:
================================================================================ Available Ant Versions ================================================================================ > * 1.10.1 1.10.0 1.9.9 1.9.8 1.9.7 ================================================================================ + - local version * - installed > - currently in use ================================================================================
Como puede ver en el resultado anterior, la hormiga 1.10.1 tiene el prefijo “>” y “*”. Aquí, > indica que esta versión está actualmente en uso y el * indica que es la versión predeterminada.
Establecer SDK predeterminado
Como ya dije, si ha instalado varias versiones, SDKMAN le preguntará si desea que la versión actualmente instalada se configure como por defecto . Puede responder Sí para configurarlo como predeterminado. Además, puede hacerlo más tarde usando el siguiente comando:
$ sdk default ant 1.9.9
El comando anterior establecerá Apache Ant versión 1.9.9 por defecto.
Use SDK específico para el shell actual
Puede elegir una versión candidata particular para usar en el shell actual.
$ sdk use ant 1.9.9
Tenga en cuenta que esto hará que la versión dada se use solo en la sesión actual. Para hacerlo permanente, use el comando “predeterminado” como se muestra arriba.
Mostrar versiones actualmente en uso
Para verificar lo que está actualmente en uso para un candidato, por example Java, ejecuta:
$ sdk current java Using java version 8.0.172-zulu
Para verificar lo que está actualmente en uso para todos los Candidatos, por example Java, ejecuta:
$ sdk current Using: ant: 1.10.1 java: 8.0.172-zulu
Candidatos de ascenso
Para actualizar un candidato obsoleto, haga lo siguiente:
$ sdk upgrade scala
También puede verificar qué está desactualizado para todos los candidatos.
$ sdk upgrade
Modo offline
SDKMAN tiene una función de modo sin conexión que permite que SDKMAN funcione cuando se trabaja sin conexión. Puede habilitar o deshabilitar el modo fuera de línea en cualquier momento usando los siguientes comandos:
$ sdk offline enable
$ sdk offline disable
Eliminación de SDK instalados
Para eliminar un SDK instalado, ejecute:
$ sdk uninstall ant 1.9.9
Obteniendo ayuda
Para mostrar la sección de ayuda, ejecute:
$ sdk help Usage: sdk <command> [candidate] [version] sdk offline <enable|disable> commands: install or i <candidate> [version] uninstall or rm <candidate> <version> list or ls [candidate] use or u <candidate> [version] default or d <candidate> [version] current or c [candidate] upgrade or ug [candidate] version or v broadcast or b help or h offline [enable|disable] selfupdate [force] update flush <broadcast|archives|temp> candidate : the SDK to install: groovy, scala, grails, gradle, kotlin, etc. use list command for comprehensive list of candidates eg: $ sdk list version : where optional, defaults to latest stable if not provided eg: $ sdk install groovy
Actualizar SDKMAN
El siguiente comando instala una nueva versión de SDKMAN si está disponible.
$ sdk selfupdate
SDKMAN también verificará periódicamente si hay actualizaciones y le informará con instrucciones sobre cómo actualizar.
WARNING: SDKMAN is out-of-date and requires an update. $ sdk update Adding new candidates(s): scala
Eliminar caché
Se recomienda limpiar la memoria caché que contiene los archivos binarios SDK descargados de vez en cuando. Para hacerlo, simplemente ejecute:
$ sdk flush archives
También es bueno limpiar la carpeta temporal para ahorrar espacio:
$ sdk flush temp
Desinstalar SDKMAN
Si no necesita SDKMAN o no le gusta, elimínelo como se muestra a continuación.
$ tar zcvf ~/sdkman-backup_$(date +%F-%kh%M).tar.gz -C ~/ .sdkman $ rm -rf ~/.sdkman
Finalmente, abra su .bashrc (o .bash_perfil o .perfil ) expediente:
$ nano ~/.bashrc
Busque y elimine las siguientes líneas.
#THIS MUST BE AT THE END OF THE FILE FOR SDKMAN TO WORK!!! export SDKMAN_DIR="/home/ostechnix/.sdkman" [[ -s "/home/ostechnix/.sdkman/bin/sdkman-init.sh" ]] && source "/home/ostechnix/.sdkman/bin/sdkman-init.sh"
Si usa ZSH, elimine las líneas anteriores del .zshrc expediente.
Lectura relacionada:
- Cómo administrar varias versiones de Java con jEnv en Linux
- Cómo administrar múltiples versiones de Python con Pyenv en Linux
Recursos:
¡Gracias por pasar!
Ayúdanos a ayudarte:
- Suscríbete a nuestro boletín de correo electrónico : Regístrate ahora
- Soporte OSTechNix: Donar a través de PayPal
- Descargue libros electrónicos y videos gratis: OSTechNix en TradePub
- Conéctate con nosotros: Reddit | Facebook | Twitter | LinkedIn | RSS Feeds
¡¡Que tenga un buen día!!