En macOS, ¿cómo ejecutar un archivo JNLP con OpenJDK 8?

0

Debido a la nueva licencia de OracleJDK8 , Tengo que usar OpenJDK8. He instalado AdoptOpenJDK8 de Homebrew y funciona bien.

El problema es que tengo que iniciar una aplicación Java desde un enlace JNLP, lo que se llama Inicio de Java Web . El problema es que esta función no está incluida en OpenJDK8.

Java Web Start se implementa en el proyecto IcedTea-Web pero no puedo encontrar ningún binario para macOS y encontrar Intento construirlo, obtengo el mensaje:

configure: error: "OS darwin18.2.0 is not supported"

Mi pregunta es: ¿Cómo puedo ejecutar un archivo JNLP con OpenJDK 8? ¿Necesito usar IcedTea-Web y, en caso afirmativo, cómo construirlo?

    
pregunta Ortomala Lokni 17.11.2018 - 13:40

1 respuesta

0

IcedTea-Web es un proyecto que:

  

proporciona un complemento de navegador web de Software gratuito que ejecuta applets escritos en el lenguaje de programación Java y una implementación de Java Web Start, originalmente basada en el proyecto NetX.

pero no hay compilación para macOS. Sin embargo, la parte importante de esta aplicación está escrita en Java para que podamos ejecutarla directamente en macOS. Aquí es cómo:

Obtenga la compilación de Debian a partir de la versión estable:

wget http://ftp.us.debian.org/debian/pool/main/i/icedtea-web/icedtea-netx-common_1.6.2-3.1_all.deb

Extraiga el archivo deb:

tar xzvf icedtea-netx-common_1.6.2-3.1_all.deb

Extraiga el archivo data.tar.xz que está dentro del archivo deb:

tar xzvf data.tar.xz

Vaya al directorio donde está el archivo jar principal:

cd usr/share/icedtea-web/

y simplemente ejecuta tu archivo jnlp:

java -cp netx.jar net.sourceforge.jnlp.runtime.Boot -Xnofork -jnlp my_application.jnlp

Dependiendo de su aplicación, podría tener que cambiar las opciones. Puedes listarlos con:

java -cp netx.jar net.sourceforge.jnlp.runtime.Boot

que resultan en:

SYNOPSIS
    javaws [-run-options] jnlp file
    javaws [-control-options]

OPTIONS
    When specifying options, the name of the jnlp file can be after the command, the -jnlp option, an option with no arguments, or after an argument with an option that takes one argument. A html file that launches a jnlp can be specified after the -html option.
    The jnlp-file can either be a url or a local path.
    The JNLP file should only be specified once, whether as a main argument, after -jnlp or through an html file.
    Control options:
    -about               - Shows a sample application.(No argument expected)
    -help                - Prints out information about supported command and basic usage.(No argument expected)
    -license             - Display the GPL license and exit.(No argument expected)
    -viewer              - Shows the trusted certificate viewer.(No argument expected)
    -Xclearcache         - Clean the JNLP application cache.(No argument expected)
    Run options:
    -allowredirect       - Follows HTTP redirects.(No argument expected)
    -arg arg             - Adds an application argument before launching.(Expected one or more arguments)
    -headless            - Disables download window, other UIs.(No argument expected)
    -html                - Location of HTML file to launch (url or file). You can use parameter ALL  or numbers (like 1 2 5) to select applets on page. However experimental, this switch should keep you still in safety.(Expected one or more arguments)
    -jnlp                - Location of JNLP file to launch (url or file).(Exactly one argument expected)
    -nosecurity          - Disables the secure runtime environment.(No argument expected)
    -noupdate            - Disables checking for updates.(No argument expected)
    -param name=value    - Adds an applet parameter before launching.(Expected one or more arguments)
    -property name=value - Sets a system property before launching.(Expected one or more arguments)
    -strict              - Enables strict checking of JNLP file format.(No argument expected)
    -update seconds      - Check for updates.(Exactly one argument expected)
    -verbose             - Enable verbose output.(No argument expected)
    -version             - Print the IcedTea-Web version and exit.(No argument expected)
    -Xignoreheaders      - Skip jar header verification.(No argument expected)
    -xml                 - Uses a strict XML parser to parse the JNLP file.(No argument expected)
    -Xnofork             - Do not create another JVM.(No argument expected)
    -Xoffline            - Prevent ITW network connection. Only cache will be used. Application can still connect.(No argument expected)
    -Xtrustnone          - Instead of asking user, will foretold all answers as no.(No argument expected)
    
respondido por el Ortomala Lokni 28.11.2018 - 22:04

Lea otras preguntas en las etiquetas