studio
2020.10
false
UiPath logo, featuring letters U and I in white
Sin asistencia
Guía de usuario de Studio
Last updated 20 de dic. de 2023

Extensión para Java

Nota: para Java 9+, la extensión de UiPath para Java funciona en ediciones de Windows Enterprise y no Enterprise con aplicaciones abiertas con Java JDK. Para las aplicaciones abiertas con Java JRE, la extensión de UiPath para Java solo funciona en ediciones no Enterprise de Windows. Consulta más información en la guía de resolución de problemas de extensiones de Java.

Desde Studio y la línea de comandos

La extensión UiPath para Java se instala llevando a cabo la siguiente acción:

  1. En primer lugar, cierra cualquier aplicación Java. Inicia Studio y accede a la pestaña Herramientas desde la vista Backstage de Studio. Las extensiones que puedes instalar se vuelven visibles. Haz clic en el botón Extensiones de Java. Aparecerá así un mensaje de confirmación, informándote de que la extensión se ha instalado.
  2. Ejecuta este comando C:\Program Files (x86)\UiPath\Studio\UiPath\SetupExtensions.exe /Java en una ventana de símbolo de comandos con derechos de administrador.

Studio y UI Explorer también solicitan instalar la extensión UiPath para Java cuando intentas seleccionar un control dentro de una aplicación Java y cuando el puente no se detecta. Ten en cuenta que, si decides instalar la extensión UiPath para Java cuando UI Explorer te lo pide, los archivos de Java Bridge solo se implementarán en el directorio JRE que inició la aplicación Java de destino en lugar de en el directorio JDK.

Nota: Para instalar esta extensión, debes tener derechos de administrador.

Para comprobar si la extensión funciona correctamente, abre UIExplorer e intenta seleccionar controles dentro de una aplicación Java. Si se selecciona la ventana completa, significará que la extensión no funciona correctamente.

Puedes saber si la extensión está instalada o no correctamente por los selectores generados para los controles de Java.

  • Selector válido para controles Java: <wnd app=”...” /><java role=”...” />
  • Selector no válido para controles de Java: <wnd app=”...” /><ctrl role=”client” />
Nota: La extensión UiPath para Java solo es compatible con aplicaciones AWT (p. ej., Java Swing, Oracle Forms, Fujitsu JBK) mientras que las aplicaciones SWT se automatizan con accesibilidad activa.Para detectar el tipo de tu aplicación de Java, consulta el atributo cls (nombre de la clase de la ventana) en UI Explorer.El nombre de la clase debería parecerse a SunAwtFrame o a javax.swing.

Los procesos pueden interactuar con las aplicaciones Java independientemente de su escala de DPI.

También se puede instalar la extensión UiPath para Java utilizando la herramienta ScreenScrapeJavaSupport.

Instalar la extensión en una carpeta personalizada

Para Java 8 o anteriores

Para que la extensión UiPath para Java se instale en una ubicación personalizada, se deben seguir los siguientes pasos:

  1. Crea una nueva carpeta en tu equipo en la que quieras instalar la extensión UiPath para Java (como C:\UiPathJavaExt) y copia los siguientes archivos en ella:
    1. UiPathBridge.jar: ubicado en el directorio %UserProfile%\.nuget\packages\uipath\20.xx.xxxx\build\UiPath\JavaSupport.
    2. UiPathJavaBridgeV8.dll y UiPathJavaBridgeV8_x64.dll ubicados en el directorio %UserProfile%\.nuget\packages\uipath\20.xx.xxxx\build\UiPath. No es necesario copiar ambos archivos, pero puede evitar problemas que se pueden producir debido a la falta de compatibilidad de las versiones entre JRE y UiPath Java Bridge.
  2. El mecanismo de configuración de la extensión de Java que utiliza UiPath para instalar la extensión implementa los archivos UiPathBridge.jar y accessibility.properties en el directorio de instalación (normalmente C:\Program Files (x86)\Java\jre1.8.0_xx). Para utilizar la extensión UiPath para Java desde una carpeta personalizada, la dependencia de estos archivos debe deshacerse de la siguiente manera:
    1. Para el archivo UiPathBridge.jar, deberás especificar la carpeta en la que copiaste UiPathBridge.jar y UiPathJavaBridgev8.dll (como C:\UiPathJavaExt) cuando inicies la aplicación Java que utiliza la extensión. Esta acción se lleva a cabo mediante el argumento -Djava.ext.dirs = C:\UiPathJavaExt.
    2. Para el archivo accessibility.properties, hay dos métodos:
      • Añade el parámetro assistive_technologies=UiPath.UiPathBridge al archivo de configuración global accessibility.properties ubicado en el directorio %userprofile%. Ten en cuenta que este archivo es diferente al que implementa la extensión UiPath para Java, y que su configuración tiene prioridad sobre la que establece la instalación de Java.
      • Utiliza el argumento -Djavax.accessibility.assistive_technologies=UiPath.UiPathBridge al ejecutar la aplicación Java de destino.

Las propiedades del sistema deben trasladarse correctamente a la aplicación Java de destino. Esta acción puede llevarse a cabo mediante varios métodos:

  • Incluye la propiedad del sistema -Djava.ext.dirs=C:\UiPathJavaExt -Djavax.accessibility.assistive_technologies=UiPath.UiPathBridge en la variable de entorno _JAVA_OPTIONS. El JRE carga las propiedades desde la variable de entorno y la extensión UiPath para Java cargada en la aplicación de destino.
  • Utiliza el comando C:\Program Files (x86)\Java\jre1.8.0_xx\bin\java.exe -Djavax.ext.dirs=C:\UiPathJavaExt -Djavax.accessibility.assistive_technologies=UiPath.UiPathBridge -jar SwingSet2.jar dentro del símbolo del sistema. Aparecerá así un mensaje de confirmación indicando que la extensión UiPath para Java se ha cargado correctamente.
  • Incluye la propiedad del sistema -Djava.ext.dirs=C:\UiPathJavaExt -Djavax.accessibility.assistive_technologies=UiPath.UiPathBridge en la variable de entorno JAVA_TOOL_OPTIONS. Ten en cuenta que este método solo funciona con Java 5 o posteriores.

El traslado de las propiedades a un applet Java se lleva a cabo con uno de los siguientes métodos:

  1. Utilizando la appletviewer.exe aplicación.
    Este método requiere que primero crees el archivo .java.policy en la carpeta %userprofile%, además de contener lo siguiente:
    grant { 
        permission java.net.URLPermission "url_of_the_Java_applet", "<em>:</em>"; 
    };grant { 
        permission java.net.URLPermission "url_of_the_Java_applet", "<em>:</em>"; 
    };
    Una vez terminado, el applet de destino debe iniciarse a través de appletviewer.exe con este comando:

    C:\Program Files (x86)\Java\jre1.8.0_xx\bin\appletviewer.exe -J-Djava.ext.dirs=C:\UiPathJavaExt -J-Djavax.accessibility.assistive_technologies=UiPath.UiPathBridge url_of_the_java_applet

  2. Utilizando el panel de control de Java que se entrega con JRE.

    El panel de control de Java te permite especificar los parámetros de tiempo de ejecución para cada JRE registrado. Por tanto, debes especificar el

    -Djava.ext.dirs=C:\UiPathJavaExt -Djavax.accessibility.assistive_technologies=UiPath.UiPathBridge

    parámetro para el applet de destino. Esto hace que la extensión UiPath para Java se cargue cada vez que se inicia el applet de Java.

La siguiente tabla presenta la compatibilidad entre los métodos utilizados anteriormente, las versiones Java y los diferentes tipos de aplicaciones Java:

Tipo de aplicación

_JAVA_OPTIONS

JAVA_TOOL_OPTIONS

Parámetros de la línea de comandos

Panel de control de Java: parámetros del entorno de tiempo de ejecución

Aplicación de escritorio de Java

Java 3 a Java 8

Java 5 a Java 8

Java 3 a Java 8

No compatible

Aplicación con contenido en Java (.exe)

Java 3 a Java 8

Java 5 a Java 8

Java 3 a Java 8 (1)

No compatible

Applet Java

Java 3 a Java 8

Java 5 a Java 8

No compatible

Java 3 a Java 8

Java Oracle Forms

No compatible

No compatible

No compatible

No compatible

(1): dependiendo de la herramienta de la línea de comandos que utilices, es posible que tengas que traspasar parámetros adicionales por las variables del entorno.

Para Java 9 o posterior

A partir de Java 9, se eliminó el Mecanismo de extensión de Java, lo que significa que el argumento -Djava.ext.dirs no se puede utilizar en aplicaciones Java 9 o posteriores. Por tanto, se deben realizar los siguientes pasos:
  1. Crea una nueva carpeta en tu equipo en la que quieras instalar la extensión UiPath para Java (como C:\UiPathJavaExt) y copia los siguientes archivos en ella:
    1. UiPathBridge.jar y UiPathJavaServiceProvider.jar: ubicados en el directorio %UserProfile%\.nuget\packages\uipath\20.xx.xxxx\build\UiPath\JavaSupport.
    2. UiPathJavaBridgeV8.dll y UiPathJavaBridgeV8_x64.dll ubicados en el directorio %UserProfile%\.nuget\packages\uipath\20.xx.xxxx\build\UiPath. No es necesario copiar ambos archivos, pero puede evitar problemas que se pueden producir debido a la falta de compatibilidad de las versiones entre JRE y UiPath Java Bridge.
  2. Añade la carpeta creada anteriormente a la ruta de la clase de la aplicación Java de destino. Esta acción se lleva a cabo con el comando -cp, -classpath. Para nuestro ejemplo, consideramos SwingSet2 la aplicación Java de destino:

    C:\Program Files (x86)\Java\jre1.9.0_xx \bin\java.exe -cp SwingSet2.jar;C:\UiPathJavaExt\* -Djavax.accessibility.assistive_technologies=UiPathJavaServiceProvider SwingSet2

Compatibilidad del escalado de aplicaciones

El escalado es totalmente compatible con las aplicaciones de Java 9+ a través de los parámetros. Considera la posibilidad de añadir los siguientes parámetros a la aplicación Java que deseas automatizar para habilitar la compatibilidad de escalado:

  • sun.java2d.uiScale.enabled: cuando no se usa o no se establece en el valor exacto de la cadena de "true", se considera true y se tiene en cuenta la siguiente configuración de escalado. Cuando se establece en cualquier otro valor, distinto de "true" (como True, , false, False y abc) se considera "false" y no se realiza ningún ajuste de escalado.
  • sun.java2d.uiScale: los valores pueden pasarse en 3 formulaciones:
    • Como proporción (0,5, 2,3, 1,5)
    • Como porcentajes (100 %, 150 %)
    • Como valores en ppp (96 ppp, 120 ppp). Se considera si el escalado está habilitado. Modifica el escalado en ambos ejes.
  • sun.java2d.win.uiScaleX, sun.java2d.win.uiScaleY Los valores pueden pasarse como el parámetro sun.java2d.uiScale. Ambos son necesarios para poder ser considerados por la aplicación Java. Son más específicos que la configuración general de escalado. Por tanto, si se establecen los 3 parámetros, solo ellos se tienen en cuenta.

¿Te ha resultado útil esta página?

Obtén la ayuda que necesitas
RPA para el aprendizaje - Cursos de automatización
Foro de la comunidad UiPath
Uipath Logo White
Confianza y seguridad
© 2005-2024 UiPath. Todos los derechos reservados.