- Notas de Versão
- Introdução
- Configuração e Instalação
- Projetos de automação
- Dependências
- Tipos de fluxos de trabalho
- Comparação de arquivos
- Melhores Práticas de Automação
- Integração de controle de origem
- Depuração
- A ferramenta de diagnóstico
- Analisador de Fluxo de Trabalho
- Sobre o Analisador de Fluxo de Trabalho
- STN MG-001 - Convenção de nomenclatura de variáveis
- STN MG-002 - Convenção de nomenclatura de argumentos
- STN MG-004 - Duplicação de Nome de Exibição
- STN MG-005 - Variável substitui variável
- STN MG-006 - Variável substitui argumento
- STN MG-008 - Comprimento de variável excedido
- STN MG-009 - Variáveis Catablema de prefixo
- STN MG-011 - Argumentos Catablema de prefixo
- STN MG-012 - Valores padrão de argumentos
- STN MG-016 - Comprimento do argumento excedido
- SR-DB-002 - Contagem alta de argumentos
- SR-DB-003 - Esvaziar bloco catechu
- SR-DB-007 - Múltiplas camadas Com fluxograma
- SR-DB-020 - Propriedades de saída indefinidas
- SR-DB-023 - Fluxo de trabalho vazio
- SR-DB-024 - Verificação da atividade Persistente
- SR-DB-025 - Pré-requisito de serialidade de variáveis
- SR-DB-026 - Uso da atividade Dela
- SR-DB-027 - Melhores práticas de persistência
- SR-DB-028 - Pré-requisito de serialidade de argumentos
- SR-US-005 - Argumentos de atividades embutidos em código
- SR-US-009 - Variáveis não utilizadas
- SR-US-010 - Dependências não utilizadas
- SR-US-014 - Restrições de pacotes
- SR-US-020 - Mensagens de logue mínimas
- SR-US-024 - Não utilizado e postergado
- SR-US-025 - Uso incorreto do valor salvo
- SR-US-026 - Restrições da atividade
- SR-US-027 - Pacotes necessários
- ST-USG-28 — restringir modelos de invocação de arquivos
- Variáveis
- Argumentos
- Namespaces Importados
- Gravação
- Elementos de Interface Gráfica
- Fluxo de controle
- Seletores
- Repo. de Objetos
- Extração de Dados
- Automação de imagem e texto
- Automação de tecnologias Citrino
- Automação RDP
- Automação da Salesforce
- Automação SAP
- Automação do Varear Horizonte
- Geração de logs
- A ferramenta ScreenScrapeJavaSupport
- O protocolo Servodrive
- Test Suite — Studio
- Extensões
- Solução de problemas
- Sobre a solução de problemas
- Suporte e limitações do Microsoft Apo-V
- Solução de problemas do Internet Explorer x64
- Problemas do Microsoft Office
- Como identificar elementos de EU em PDF com opções de acessibilidade
- Solução de problemas de aplicativos do JxBrowser
- Monitoração de eventos de usuário
- Solução de problemas da Citrix
Extensão para Java
Atualmente, a Extensão Java é compatível com qualquer versão do JRE, desde o Java 3 até o Java 15.
A Extensão UiPath para Java é instalada fazendo o seguinte:
- Primeiro, feche qualquer aplicativo Java em execução. Inicie o Studio e acesse a aba Ferramentas a partir da exibição Backstage do Studio. As extensões que você pode instalar se tornem visíveis. Clique no botão Extensões Java. Uma mensagem de confirmação aparece, informando que a extensão foi instalada.
- Execute este comando
C:\Program Files\UiPath\Studio\UiPath\SetupExtensions.exe /Java
em uma janela de prompt de comando com direitos de administrador.
O Studio e o UI Explorer também pedem para instalar a Extensão UiPath para Java quando você tentar selecionar um controle dentro de um aplicativo Java e quando a ponte não é detectada. Observe que se você escolher instalar a Extensão UiPath para Java quando solicitado pelo UI Explorer, os arquivos do Java Bridge são implantados apenas no diretório JRE que lançou o aplicativo Java de destino em vez do diretório JDK.
Para verificar se a extensão não está funcionando corretamente, abra o UI Explorer e tente selecionar controles dentro de um aplicativo Java. Se a janela inteira estiver selecionada, significa que a extensão não está funcionando corretamente.
- Seletor válido para controles Java:
<wnd app=”...” /><java role=”...” />
- Seletor Inválido para controles Java:
<wnd app=”...” /><ctrl role=”client” />
cls
(nome de classe de janela) no UI Explorer. O nome da classe deve ser semelhante a SunAwtFrame
ou javax.swing
.
Os processos podem interagir com aplicativos Java independentemente de sua escala de DPI.
A Extensão UiPath para Java também pode ser instalada usando a ferramenta ScreenScrapeJavaSupport.
O instalador da Extensão Java incorporada no Studio (e também o ScreenScrapeJavaSupport) depende do mecanismo de extensão para que a extensão seja carregada pelo JRE. A partir do Java 9, o mecanismo de extensão foi descontinuado, e o instalador não é mais capaz de adicionar os arquivos necessários ao JRE (mais informações aqui).
Portanto, se o aplicativo Java estiver usando Java 9 ou superior, será necessário seguir as etapas descritas aqui.
Para que a Extensão UiPath para Java seja instalada em um local personalizado, as seguintes etapas precisam ser realizadas:
- Crie uma nova pasta na sua máquina na qual você deseja instalar a Extensão UiPath para Java (como
C:\UiPathJavaExt
) e copie os seguintes arquivos para ela:UiPathBridge.jar
- localizado no diretório%UserProfile%\.nuget\packages\uipath\20.xx.xxxx\build\UiPath\JavaSupport
.UiPathJavaBridgeV8.dll
eUiPathJavaBridgeV8_x64.dll
localizados no diretório%UserProfile%\.nuget\packages\uipath\20.xx.xxxx\build\UiPath
. Não é necessário copiar ambos os arquivos, mas pode evitar problemas que podem ocorrer devido à incompatibilidade de versões entre o JRE e o UiPathJavaBridge.
- O mecanismo de Configuração de Extensão do Java usado pelo UiPath para instalar a extensão implanta os arquivos
UiPathBridge.jar
eaccessibility.properties
no diretório de instalação do Java (geralmenteC:\Program Files (x86)\Java\jre1.8.0_xx
). Para usar a Extensão UiPath para Java a partir de uma pasta personalizada, a dependência para esses arquivos deve ser atenuada da seguinte maneira:- Para o arquivo
UiPathBridge.jar
, você precisa especificar a pasta na qual você copiouUiPathBridge.jar
eUiPathJavaBridgev8.dll
(comoC:\UiPathJavaExt
) quando você iniciar o aplicativo Java que usa a extensão. Isso é feito por meio do argumento-Djava.ext.dirs = C:\UiPathJavaExt
. - Para o arquivo
accessibility.properties
, há dois métodos:- Adicione o parâmetro
assistive_technologies=UiPath.UiPathBridge
ao arquivo de configuração globalaccessibility.properties
localizado no diretório%userprofile%
. Observe que esse arquivo é diferente daquele implantado pela Extensão UiPath para Java, e suas configurações têm precedência sobre as que estão definidas pela instalação Java. - Use o argumento
-Djavax.accessibility.assistive_technologies=UiPath.UiPathBridge
quando você executar o aplicativo Java de destino.
- Adicione o parâmetro
- Para o arquivo
As propriedades do sistema precisam ser passadas corretamente para o aplicativo Java de destino. Isso pode ser feito por meio de vários métodos:
- Inclua a propriedade
-Djava.ext.dirs=C:\UiPathJavaExt -Djavax.accessibility.assistive_technologies=UiPath.UiPathBridge
do sistema na variável de ambiente_JAVA_OPTIONS
. O JRE carrega as propriedades da variável de ambiente e da Extensão do UiPath para Java carregada no aplicativo de destino. - Use o 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 do prompt de comando. Uma mensagem de confirmação aparece indicando que a Extensão do UiPath para Java foi carregada com sucesso. - Inclua a propriedade
-Djava.ext.dirs=C:\UiPathJavaExt -Djavax.accessibility.assistive_technologies=UiPath.UiPathBridge
do sistema na variável de ambienteJAVA_TOOL_OPTIONS
. Observe que esse método funciona apenas com o Java 5 ou posterior.
A passagem de propriedades para um applet Java é feita com um dos seguintes métodos:
- Usando a aplicação
appletviewer.exe
.Este método requer que você crie primeiro o arquivo.java.policy
na pasta%userprofile%
e deve conter o seguinte:grant { permission java.net.URLPermission "url_of_the_Java_applet", "<em>:</em>"; };
grant { permission java.net.URLPermission "url_of_the_Java_applet", "<em>:</em>"; };Após essa conclusão, o applet de destino precisa ser iniciado por meio deappletviewer.exe
com 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
- Usando o Painel de controle do Java que é entregue com o JRE.
O Painel de controle Java permite que você especifique os parâmetros de runtime para cada JRE. Dessa forma, é necessário que você especifique o
-Djava.ext.dirs=C:\UiPathJavaExt -Djavax.accessibility.assistive_technologies=UiPath.UiPathBridge
parâmetro do miniaplicativo de destino. Isso faz com que a Extensão UiPath para Java seja carregada sempre que o applet Java for iniciado.
A tabela abaixo apresenta a compatibilidade entre os métodos usados acima, versões Java e diferentes tipos de aplicativos Java:
Tipo de Aplicativo |
_JAVA_OPTIONS |
JAVA_TOOL_OPTIONS |
Parâmetros de Linha de Comando |
Painel de controle Java - Parâmetros de Runtime |
---|---|---|---|---|
Aplicativo para Computadores do Java |
Java 3 para Java 8 |
Java 5 para Java 8 |
Java 3 para Java 8 |
Não Compatível |
Aplicativo Contido do Java (
.exe )
|
Java 3 para Java 8 |
Java 5 para Java 8 |
Java 3 para Java 8 (
1 )
|
Não Compatível |
Applet Java |
Java 3 para Java 8 |
Java 5 para Java 8 |
Não Compatível |
Java 3 para Java 8 |
Formulários do Oracle Java |
Não Compatível |
Não Compatível |
Não Compatível |
Não Compatível |
1
) - Dependendo da ferramenta de linha de comando que você usar, os parâmetros adicionais podem ser passados por meio das variáveis de ambiente.
-Djava.ext.dirs
não pode ser usado em aplicativos com Java 9 e superiores.
A ideia principal por trás do carregamento da extensão pode ser dividida em 3 requisitos:
- Adicione o
UiPathBridge.jar
eUiPathServiceProvider.jar
ao classpath do aplicativo. -
Torne
UiPathJavaBridgeV8.dll
eUiPathJavaBridgeV8_x64
visíveis paraUiPathBrdige.jar
. Isso pode ser feito de diversas maneiras:- colocar os arquivos na mesma pasta com
UiPathBridge.jar
; - colocar os arquivos na pasta acima
UiPathBridge.jar
; - adicionar os dois arquivos a uma pasta e referenciar seu caminho por meio de uma variável de ambiente chamada
UIPATH_JB_PATH
;Não é necessário fazer referência a ambos os arquivos, mas isso pode evitar problemas que podem ocorrer devido à diferença de versão entre JRE e o UiPath Java Bridge.
- colocar os arquivos na mesma pasta com
- Configure o aplicativo para carregar a tecnologia adaptativa. Isso é feito através do arquivo
accessibility.properties
, que é colocado dentro dos JREs.Observação: o arquivoUiPathJavaServiceProvider.jar
está disponível nos pacotes mais recentes do UiPath.UIAutomation.Activities (mais recentes que o 21.2-preview). Se você estiver usando uma versão inferior do UIAutomation, o arquivo pode ser obtido atualizando temporariamente um arquivo de fluxo de trabalho vazio para a versão 21.2-preview. Isso gera a desempacotamento de uma versão mais recente do pacoteUiPath.nuget
na máquina do usuário (%UserProfile%\.nuget\packages\uipath
). Após obter o arquivo, pode ser feito o downgrade no pacote para a versão usada antes da atualização.
Atender aos requisitos acima depende diretamente da forma como o aplicativo Java é iniciado. Há 3 maneiras comuns de iniciar o aplicativo e carregar a extensão.
Aplicativos iniciados a partir de arquivos .jar
, .bat
, ou .ps1
.jar
simples: java -jar SwingSet2.jar
As seguintes etapas precisam ser realizadas:
- Crie uma nova pasta na sua máquina na qual você deseja instalar a Extensão UiPath para Java (como
C:\UiPathJavaExt
) e copie os seguintes arquivos para ela:UiPathBridge.jar
eUiPathJavaServiceProvider.jar
- localizados no diretório%UserProfile%\.nuget\packages\uipath\20.xx.xxxx\build\UiPath\JavaSupport
.UiPathJavaBridgeV8.dll
eUiPathJavaBridgeV8_x64.dll
- localizados no diretório%UserProfile%\.nuget\packages\uipath\20.xx.xxxx\build\UiPath
.
- Adicione a pasta criada anteriormente ao classpath do aplicativo Java de destino. Isso é feito com o comando
-cp, -classpath
. Para esse exemplo, consideramosSwingSet2
como o aplicativo 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
.bat
ou .ps1
, então o arquivo deve ser analisado com um editor de texto. O arquivo que inicia o aplicativo contém uma linha semelhante ao comando java -jar SwingSet2.jar
, mas também inclui muitos outros parâmetros. O comando pode ser alterado para incluir os arquivos no classpath e especificar o parâmetro da tecnologia adaptativa. Alterações dentro desses arquivos devem ser feitas com cuidado. Em alguns casos, o classpath e os parâmetros adicionais são escolhidos de variáveis de ambiente, que é um método menos invasivo.
Aplicativos iniciados de arquivos .exe
exe
você deve encontrar uma maneira alternativa de carregar os arquivos para o classpath e especificar o parâmetro da tecnologia adaptativa.
- Para carregar os arquivos do classpath, você pode pesquisar por variáveis de ambiente que são lidas pelo executável, ou por arquivos de configuração que especificam onde as dependências são carregadas. Não há nada que seja padrão aqui, e depende muito do nível de personalização do executável.
- A tecnologia adaptativa pode ser especificada neste caso de maneira similar àquela usada pelo instalador de extensão. O arquivo padrão
accessibility.properties
, pode ser movido para a pasta%UserProfile%
e renomeado para.accessbility.properties
.
Aplicativos iniciados de arquivos .jnlp
.jnlp
, o seguinte deve ser considerado:
- Carregar o
UiPathBridge,jar
eUiPathServiceProvider.jar
deve ser feito os adicionando como dependências para o arquivo.jnlp
. Isso determina que o servidor deve fornecer um novo arquivo.jnlp
, em vez de editar um já existente. - Os dois arquivos
.dll
também podem ser carregados dentro do arquivo.jnlp
, ou podem ser referenciados por meio da variável de ambienteUIPATH_JB_PATH
, conforme explicado acima. - A propriedade
assistive_technology
também pode ser adicionada ao arquivo.jnlp
, ou o arquivoaccessibility.properties
pode ser colocado no%UserProfile%
.
O dimensionamento tem suporte total em aplicativos Java 9+ através de parâmetros. Considere adicionar os parâmetros a seguir ao aplicativo Java que deseja automatizar, a fim de habilitar o suporte ao dimensionamento:
sun.java2d.uiScale.enabled
─ Quando não utilizado ou definido como o valor exato da string de "true", ele será considerado como verdadeiro e a seguinte configuração de dimensionamento será levada em consideração. Quando definido com qualquer outro valor, mas "true" (tais como True, false, False, abc), então ele será considerado como falso e não serão feitos ajustes de dimensionamento adicionais.-
sun.java2d.uiScale
─ Os valores podem ser passados de três maneiras:- Como um índice (0,5, 2,3, 1,5)
- Como porcentagens (100%, 150%)
- Como valores de dpi (96 dpi, 120 dpi). O valor será considerado se o dimensionamento estiver habilitado. Ele modifica o dimensionamento em ambos os eixos.
sun.java2d.win.uiScaleX, sun.java2d.win.uiScaleY
Os valores podem ser passados quando ao parâmetrosun.java2d.uiScale
. Ambos são necessário para serem considerados pelo aplicativo Java. Eles são mais específicos do que a configuração geral do dimensionamento. Como tal, se todos os três parâmetros estiverem definidos, somente esses serão considerados.