- Versionshinweise
- Erste Schritte
- Einstellung und Konfiguration (Setup and Configuration)
- Automationsprojekte
- Über die Veröffentlichung von Automatisierungsprojekten
- Entwerfen von Automatisierungen
- Verwalten von Aktivitätspaketen
- Konfigurieren von Aktivitätsprojekteinstellungen
- Signieren von Paketen
- Governance
- Importieren von Entitäten
- Moderne Designumgebung
- Verknüpfen eines Projekts mit einer Idee im Automation Hub
- Verwenden des Data Managers
- Abhängigkeiten
- Workflow-Typen
- Dateivergleich
- Beste Praktiken für die Automatisierung (Automation Best Practices)
- Integration der Quellenkontrolle
- Debugging
- Das Diagnose-Tool
- Workflow-Analyse
- Über die Workflow-Analyse
- ST-NMG-001 – Namenskonvention für Variablen
- ST-NMG-002 – Namenskonvention für Argumente
- ST-NMG-004 – Duplizierung des Anzeigenamens
- ST-NMG-005 – Variable überschreibt Variable
- ST-NMG-006 – Variable überschreibt Argument
- ST-NMG-008 – Variablenlänge überschritten
- ST-NMG-009: Datentabellenvariablen mit Präfix versehen
- ST-NMG-011 – Datentabellenargumente mit Präfix versehen
- ST-NMG-012 – Standardwerte für Argumente
- ST-NMG-016 – Argumentlänge überschritten
- ST-DBP-002 – Hohe Anzahl von Argumenten
- ST-DBP-003 – Leerer Catch-Block
- ST-DBP-007 – Mehrere Flussdiagrammebenen
- ST-DBP-020 – Nicht definierte Ausgabeeigenschaften
- ST-DBP-023 – Leerer Workflow
- ST-DBP-024 – Prüfung der Persistenzaktivität
- ST-DBP-025 – Voraussetzung für Variablenserialisierung
- ST-DBP-026 – Verwendung der Verzögerungsaktivität
- ST-DBP-027 – Bewährte Methode für Persistenz
- ST-DBP-028 – Voraussetzung für Argumentenserialisierung
- ST-USG-005 – Hartcodierte Aktivitätsargumente
- ST-USG-009 – Nicht verwendete Variablen
- ST-USG-010 – Nicht verwendete Abhängigkeiten
- ST-USG-014 – Paketbeschränkungen
- ST-USG-020 – Minimale Protokollmeldungen
- ST-USG-024 – Nicht verwendet, gespeichert für später
- ST-USG-025 – Missbrauch gespeicherter Werte
- ST-USG-026 – Aktivitätseinschränkungen
- ST-USG-027 – Erforderliche Pakete
- ST-USG-028 – Aufruf von Dateivorlagen einschränken
- ST-USG-032 – Erforderliche Tags
- ST-USG-034 – Automation Hub-URL
- Variablen
- Argumente
- Importierte Namespaces
- Aufzeichnung
- UI-Elemente
- Kontrollfluss
- Selektoren
- Objekt-Repository
- Data-Scraping
- Bild- und Textautomatisierung
- Automatisierung von Citrix-Technologien
- RDP-Automatisierung
- Salesforce-Automatisierung
- SAP-Automation
- VMware Horizon-Automatisierung
- Protokollierung
- Das Tool ScreenScrapeJavaSupport
- Das WebDriver-Protokoll
- Test Suite – Studio
- Erweiterungen
- Fehlersuche und ‑behebung
- Informationen zur Fehlerbehebung
- Microsoft App-V – Unterstützung und Einschränkungen
- Fehlerbehebung bei Internet Explorer x64
- Probleme in Microsoft Office
- Erkennen von UI-Elementen in PDF mit Zugriffsoptionen.
- Reparieren der Active Accessibility-Unterstützung
- Automatisieren von Anwendungen, die unter einem anderen Windows-Benutzer ausgeführt werden
- Die Validierung großer Windows-Legacy-Projekte dauert länger als erwartet
Erweiterung für Java
Die Java-Erweiterung ist mit jeder Version von JRE kompatibel, von Java 3 bis Java 17.
Während der Roboter versucht, die Selektoren in der Java-Anwendung anzugeben oder zu validieren, überprüft er, ob die Erweiterungsdateien in den Zielanwendungsprozess geladen wurden.
Die Dateien können dort durch verschiedene Mechanismen vorhanden sein:
- Die Erweiterung wird in der JRE (für Java 3 bis 8) über den Erweiterungsmechanismus installiert.
- Sie werden aus einem benutzerdefinierten Ordner geladen (für Java 3 bis 17, mit anderen Schritten für Java 9+).
Wenn die Erweiterungsdateien nicht vorhanden sind, wird über einen Injektionsmechanismus versucht, unsere Bridge zu starten.
Das in Studio eingebettete Installationsprogramm für Java-Erweiterungen (und auch das Tool ScreenScrapeJavaSupport) verwendet den Erweiterungsmechanismus, um die Erweiterung von der JRE laden zu lassen, sodass es zum Automatisieren von Java-basierten Anwendungen verwendet werden kann, die mit Java 3 bis 8 ausgeführt werden.
Ab Java 9 ist der Erweiterungsmechanismus veraltet und das Installationsprogramm kann die erforderlichen Dateien nicht zur JRE hinzufügen. Diese Dateien müssen aus einem benutzerdefinierten Ordner geladen werden (weitere Informationen finden Sie hier).
Ab Version 22.2.0-preview des UIAutomation-Pakets mit Unterstützung des standardmäßigen Injektionsmechanismus ist es nicht mehr obligatorisch, die Erweiterung für Java zum Automatisieren von Java-basierten Anwendungen zu installieren.
Sie sollten die Java-Erweiterung nur dann über Studio oder die Befehlszeile installieren, wenn der Injektionsmechanismus nicht funktioniert und wenn die Java-Anwendungen Java 3 bis 8 verwenden. Führen Sie für Java-Anwendungen, die Java 9 oder höher verwenden, die unter Installieren der Erweiterung in einem benutzerdefinierten Ordner beschriebenen Schritte aus.
Bis zur Vorschau der UiPath.UIAutomation.Activities-Version 22.2.0 funktionierte der Injektionsmechanismus nicht in allen Fällen. Das Laden der Erweiterung aus einem benutzerdefinierten Ordner war die Hauptmethode für Anwendungen, die mit Java 9+ gestartet wurden.
.jnlp
-Anwendungen, die mit Anwendungen von Drittanbietern gestartet werden, wie OWS oder IcedTea Web.
Der Injektionsmechanismus wird standardmäßig verwendet und die Installation der Java-Erweiterung sollte nur als Sicherungsmethode verwendet werden.
Die UiPath-Erweiterung für Java wird folgendermaßen installiert:
Aus Studio
- Schließen Sie alle geöffneten Java-Anwendungen.
- Öffnen Sie Studio.
- Wechseln Sie zu Tools > UiPath-Erweiterungen.
- Wählen Sie Java > Installieren aus. Eine Bestätigungsmeldung wird angezeigt und informiert Sie darüber, dass die Erweiterung installiert wurde.
Von der Kommandozeile aus
C:\Program Files\UiPath\Studio\UiPath\SetupExtensions.exe /Java
in einem Eingabeaufforderungsfenster mit Administratorrechten aus.
Studio und UI Explorer fragen überdies nach der Installation der UiPath-Erweiterung für Java, wenn Sie versuchen, ein Steuerelement in einer Java-App auszuwählen und wenn die Brücke nicht erkannt wird. Wenn Sie die UiPath-Erweiterung für Java auf Aufforderung von UI Explorer installieren, werden die Java Bridge-Dateien nur im JRE-Verzeichnis bereitgestellt, in dem die Java-Zielanwendung gestartet wurde, und nicht im JDK-Verzeichnis.
Um zu überprüfen, ob die Erweiterung nicht ordnungsgemäß funktioniert, öffnen Sie UIExplorer und versuchen Sie, Steuerelemente in einer Java-App auszuwählen. Wenn das gesamte Fenster ausgewählt wird, bedeutet das, dass die Erweiterung nicht ordnungsgemäß funktioniert.
Ob die Erweiterung ordnungsgemäß installiert wurde, erkennen Sie anhand der generierten Selektoren für Java-Steuerelemente.
- Ungültiger Selektor für Java-Steuerelemente:
<wnd app=”...” /><java role=”...” />
- Ungültiger Selektor für Java-Steuerelemente:
<wnd app=”...” /><ctrl role=”client” />
cls
(Name der Fensterklasse) in UI-Explorer. Der Klassenname sollte SunAwtFrame
oder javax.swing
ähneln.
Prozesse können unabhängig von ihrer DPI-Skalierung mit Java-Anwendungen interagieren.
Die UiPath-Erweiterung für Java kann auch mit dem Tool ScreenScrapeJavaSupport installiert werden.
Mit den folgenden Schritten installieren Sie die UiPath-Erweiterung für Java an einem benutzerdefinierten Speicherort:
-
Erstellen Sie auf Ihrer Maschine einen neuen Ordner, in dem Sie die UiPath-Erweiterung für Java installieren möchten (z. B.
C:\UiPathJavaExt
), und kopieren Sie die folgenden Dateien dorthin:UiPathBridge.jar
- befindet sich im Verzeichnis%UserProfile%\.nuget\packages\uipath\20.xx.xxxx\build\UiPath\JavaSupport
.UiPathJavaBridgeV8.dll
undUiPathJavaBridgeV8_x64.dll
befinden sich im Verzeichnis%UserProfile%\.nuget\packages\uipath\20.xx.xxxx\build\UiPath
. Es ist nicht notwendig, beide Dateien zu kopieren, aber es kann Probleme verhindern, die aufgrund von Versionsunterschieden zwischen der JRE und UiPathJavaBridge auftreten können.
-
Der Setup-Mechanismus für die Java-Erweiterung, der von UiPath zur Installation der Erweiterung verwendet wird, stellt die Dateien
UiPathBridge.jar
undaccessibility.properties
im Java-Installationsverzeichnis (normalerweiseC:\Program Files (x86)\Java\jre1.8.0_xx
) bereit. Um die UiPath-Erweiterung für Java in einem benutzerdefinierten Ordner zu verwenden, muss die Abhängigkeit für diese Dateien wie folgt gelockert werden:- Für die Datei
UiPathBridge.jar
müssen Sie den Ordner angeben, in den SieUiPathBridge.jar
undUiPathJavaBridgev8.dll
kopiert haben. (z. B.C:\UiPathJavaExt
), wenn Sie die Java-Anwendung starten, die die Erweiterung verwendet. Dies geschieht durch das Argument-Djava.ext.dirs = C:\UiPathJavaExt
. -
Für die Datei
accessibility.properties
gibt es zwei Methoden:- Fügen Sie den Parameter
assistive_technologies=UiPath.UiPathBridge
zur globalen Konfigurationsdateiaccessibility.properties
hinzu, die sich im Verzeichnis%userprofile%
befindet. Bitte beachten Sie, dass sich diese Datei von der Datei unterscheidet, die von der UiPath-Erweiterung für Java bereitgestellt wird, und dass ihre Einstellungen Vorrang vor den Einstellungen haben, die von der Java-Installation festgelegt wurden. - Verwenden Sie das Argument
-Djavax.accessibility.assistive_technologies=UiPath.UiPathBridge
, wenn Sie die Java-Zielanwendung ausführen.
- Fügen Sie den Parameter
- Für die Datei
Systemeigenschaften müssen korrekt an die Java-Zielanwendung übergeben werden. Dies kann durch verschiedene Methoden geschehen:
- Fügen Sie die Systemeigenschaft
-Djava.ext.dirs=C:\UiPathJavaExt -Djavax.accessibility.assistive_technologies=UiPath.UiPathBridge
in die Umgebungsvariable_JAVA_OPTIONS
ein. Die JRE lädt die Eigenschaften aus der Umgebungsvariablen und der UiPath-Erweiterung für Java, die in der Zielanwendung geladen sind. - Verwenden Sie den Befehl
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
in der Eingabeaufforderung. Es wird eine Bestätigungsmeldung angezeigt, dass die UiPath-Erweiterung für Java erfolgreich geladen wurde. - Fügen Sie die Systemeigenschaft
-Djava.ext.dirs=C:\UiPathJavaExt -Djavax.accessibility.assistive_technologies=UiPath.UiPathBridge
in die UmgebungsvariableJAVA_TOOL_OPTIONS
ein. Bitte beachten Sie, dass diese Methode nur mit Java 5 oder höher funktioniert.
Die Übergabe der Eigenschaften an ein Java-Applet erfolgt mit einer der folgenden Methoden:
-
Verwenden der
appletviewer.exe
-Anwendung.Bei dieser Methode müssen Sie zunächst die Datei.java.policy
im Ordner%userprofile%
erstellen, die Folgendes enthalten muss:grant { permission java.net.URLPermission "url_of_the_Java_applet", "<em>:</em>"; };
grant { permission java.net.URLPermission "url_of_the_Java_applet", "<em>:</em>"; };Sobald dies geschehen ist, muss das Ziel-Applet überappletviewer.exe
mit diesem Befehl gestartet werden: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
-
Verwendung der Java-Systemsteuerung, die in der JRE enthalten ist
In der Java-Systemsteuerung können Sie die Laufzeitparameter für jede registrierte JRE angeben. Daher müssen Sie die
-Djava.ext.dirs=C:\UiPathJavaExt -Djavax.accessibility.assistive_technologies=UiPath.UiPathBridge
Parameter für das Ziel-Applet angeben. Dadurch wird die UiPath-Erweiterung für Java jedes Mal geladen, wenn das Java-Applet gestartet wird.
Die folgende Tabelle zeigt die Kompatibilität zwischen den oben verwendeten Methoden, Java-Versionen und verschiedenen Typen von Java-Anwendungen:
Anwendungstyp |
_JAVA_OPTIONS |
JAVA_TOOL_OPTIONS |
Kommandozeilenparameter |
Java-Systemsteuerung - Laufzeitparameter |
---|---|---|---|---|
Java Desktop-Anwendung |
Java 3 bis Java 8 |
Java 5 bis Java 8 |
Java 3 bis Java 8 |
Nicht unterstützt |
In Java enthaltene Anwendung (
.exe )
|
Java 3 bis Java 8 |
Java 5 bis Java 8 |
Java 3 bis Java 8 (
1 )
|
Nicht unterstützt |
Java-Applet |
Java 3 bis Java 8 |
Java 5 bis Java 8 |
Nicht unterstützt |
Java 3 bis Java 8 |
Java Oracle Forms |
Nicht unterstützt |
Nicht unterstützt |
Nicht unterstützt |
Nicht unterstützt |
1
) - Je nach verwendetem Befehlszeilentool müssen möglicherweise zusätzliche Parameter durch die Umgebungsvariablen übergeben werden.
-Djava.ext.dirs
-Argument nicht auf Java 9 und größeren Anwendungen verwendet werden kann.
Die Hauptidee hinter dem Laden der Erweiterung kann in drei Anforderungen unterteilt werden:
- Fügen Sie den
UiPathBridge.jar
undUiPathServiceProvider.jar
zum Klassenpfad der Anwendung hinzu. -
Machen Sie
UiPathJavaBridgeV8.dll
undUiPathJavaBridgeV8_x64
fürUiPathBrdige.jar
sichtbar. Dies kann auf verschiedene Arten erfolgen:- Platzieren Sie die Dateien im selben Ordner mit
UiPathBridge.jar
; - Platzieren Sie die Dateien im Ordner über
UiPathBridge.jar
; -
Fügen Sie die beiden Dateien zu einem Ordner hinzu und verweisen Sie über eine Umgebungsvariable mit dem Namen
UIPATH_JB_PATH
auf dessen Pfad;Es ist nicht notwendig, auf beide Dateien zu verweisen, aber es kann Probleme verhindern, die aufgrund von Versionsunterschieden zwischen der JRE und UiPath Java Bridge auftreten können.
- Platzieren Sie die Dateien im selben Ordner mit
- Konfigurieren Sie die Anwendung so, dass unterstützende Technologie geladen wird. Dies geschieht über die
accessibility.properties
-Datei, die in den JREs platziert wird.Hinweis: DieUiPathJavaServiceProvider.jar
-Datei ist in den neuesten UiPath.UIAutomation.Activities-Paketen (neuer als 21.2 – Vorschau) verfügbar. Wenn Sie eine niedrigere Version von UIAutomation verwenden, kann die Datei durch vorübergehendes Upgrade einer leeren Workflowdatei auf 21.2 – Vorschau abgerufen werden. Dies führt dazu, dass eine neuere Version desUiPath.nuget
-Pakets auf die Benutzermaschine (%UserProfile%\.nuget\packages\uipath
) entpackt wird. Nach dem Abrufen der Datei kann das Paket auf die Version heruntergestuft werden, die vor dem Upgrade verwendet wurde.
Die Erfüllung der obigen Anforderungen hängt direkt von der Art und Weise ab, wie die Java-Anwendung gestartet wird. Es gibt drei gängige Möglichkeiten, die Anwendung zu starten und die Erweiterung zu laden.
Anwendungen, die von den Dateien .jar
, .bat
oder .ps1
gestartet wurden
.jar
-Dateien gestartet wird: java -jar SwingSet2.jar
Die folgenden Schritte müssen durchgeführt werden:
- Erstellen Sie auf Ihrer Maschine einen neuen Ordner, in dem Sie die UiPath-Erweiterung für Java installieren möchten (z. B.
C:\UiPathJavaExt
), und kopieren Sie die folgenden Dateien dorthin:UiPathBridge.jar
undUiPathJavaServiceProvider.jar
- befinden sich im Verzeichnis%UserProfile%\.nuget\packages\uipath\20.xx.xxxx\build\UiPath\JavaSupport
.UiPathJavaBridgeV8.dll
undUiPathJavaBridgeV8_x64.dll
- befinden sich im Verzeichnis%UserProfile%\.nuget\packages\uipath\20.xx.xxxx\build\UiPath
.
- Fügen Sie den zuvor erstellten Ordner dem Klassenpfad der Java-Zielanwendung hinzu. Dies geschieht mit dem Befehl
-cp, -classpath
. In diesem Beispiel betrachten wirSwingSet2
als Java-Zielanwendung:C:\Program Files (x86)\Java\jre1.9.0_xx \bin\java.exe -cp SwingSet2.jar;C:\UiPathJavaExt\* -Djavax.accessibility.assistive_technologies=UiPathJavaServiceProvider SwingSet2
.bat
- oder eine .ps1
Datei gestartet wird, dann muss die Datei mit einem Texteditor analysiert werden. Die Datei, die die Anwendung startet, enthält eine Zeile, die dem Befehl java -jar SwingSet2.jar
ähnelt, aber sie enthält auch viele andere Parameter. Der Befehl kann so geändert werden, dass die Dateien in den Klassenpfad aufgenommen werden und der Parameter für unterstützende Technologien angegeben wird. Änderungen innerhalb dieser Dateien sollten mit Vorsicht vorgenommen werden. In einigen Fällen werden der Klassenpfad und die zusätzlichen Parameter aus Umgebungsvariablen ausgewählt, was eine weniger invasive Methode ist.
Anwendungen, die von .exe
-Dateien gestartet wurden
exe
-Datei gestartet wird, müssen Sie eine alternative Möglichkeit finden, die Dateien auf den Klassenpfad zu laden und den Parameter für die unterstützende Technologie anzugeben.
- Um die Dateien aus dem Klassenpfad zu laden, können Sie nach Umgebungsvariablen suchen, die die ausführbare Datei liest, oder nach Konfigurationsdateien, die angeben, wo die Abhängigkeiten geladen werden. Es gibt hier kein Standardverfahren und alles ist stark abhängig vom Anpassungsgrad der ausführbaren Datei.
- Die unterstützende Technologie kann in diesem Fall ähnlich wie beim Installationsprogramm der Erweiterung angegeben werden. Die Standarddatei
accessibility.properties
kann in den%UserProfile%
-Ordner verschoben und in.accessbility.properties
umbenannt werden.
Anwendungen, die von .jnlp
-Dateien gestartet wurden
.jnlp
aufgrund eines Upgrades des vorhandenen Injektionsmechanismus.
Die Skalierung wird für Anwendungen ab Java-Version 9 über Parameter vollständig unterstützt. Sie können einer zu automatisierenden Java-Anwendung folgende Parameter hinzufügen, um die Skalierung zu ermöglichen:
sun.java2d.uiScale.enabled
– Wird dieser Parameter nicht verwendet oder auf den genauen Stringwert „true“ festgelegt, wird er als wahr betrachtet und die folgende Skalierungskonfiguration wird berücksichtigt. Wird ein anderer Wert als „true“ eingegeben, (z. B. True, false, False, abc), gilt er als falsch es werden keine zusätzlichen Skalierungsanpassungen vorgenommen.-
sun.java2d.uiScale
– Werte können in drei Formen übergeben werden:- Als Verhältnis (0.5, 2.3, 1.5)
- In Prozent (100 %, 150 %)
- Als dpi-Werte (96 dpi, 120 dpi). Es wird berücksichtigt, ob die Skalierung aktiviert ist. Die Skalierung wird auf beiden Achsen geändert.
sun.java2d.win.uiScaleX, sun.java2d.win.uiScaleY
– Werte können wie beim Parametersun.java2d.uiScale
übergeben werden. Beide müssen von der Java-Anwendung berücksichtigt werden. Sie sind spezifischer als die allgemeine Konfiguration der Skalierung. Wenn alle 3 Parameter festgelegt werden, werden nur diese berücksichtigt.
- Unterstützte Versionen
- Injektionsmechanismus
- Installieren der Erweiterung in der JRE über Studio oder die Befehlszeile
- Für Java 8 oder niedriger
- Für Java 9 oder höher
- Installieren der Erweiterung in einem benutzerdefinierten Ordner
- Für Java 8 oder niedriger
- Für Java 9 oder höher
- Unterstützung der Anwendungsskalierung