JavaSE-Anwendungen schützen
Einführungsvideos
Download
Besuchen Sie https://protector4j.com/download, um die neueste Version herunterzuladen
Installation
Windows und Linux
Es sind keine besonderen Installationsschritte erforderlich, laden Sie einfach das Archiv herunter und entpacken Sie es.
macOS
Laden Sie die DMG-Datei herunter und ziehen Sie Protector4J in den Ordner Applications. Der eigentliche Inhalt dieses Tools befindet sich in /Applications/Protector4J.app/Contents/protector4j-mac

JavaSE-Anwendungen mit GUI-Tools verschlüsseln
Wechseln Sie zum Protector4J-Ordner, führen Sie p4j-ui[.exe] aus, und Sie sehen die folgende Benutzeroberfläche.
Für macOS-Benutzer können Sie einfach auf Protector4J.app doppelklicken wie bei einer normalen Mac-Anwendung.

Anmeldung
Wenn Sie bereits die Lizenz erworben haben, klicken Sie bitte auf die Anmelde-Schaltfläche in der oberen rechten Ecke und geben Sie Ihre Benutzerdaten ein. Wenn Sie keine Lizenz haben, können Sie dieses Tool trotzdem ausprobieren.

Anwendungstyp auswählen
Klicken Sie auf die Schaltfläche "JavaSE Application" auf der Anwendungstyp-Seite.

JAR/WAR-Datei auswählen, die verschlüsselt werden soll
Wählen Sie die JAR/WAR-Dateien aus, die Sie verschlüsseln möchten. Sie können eine oder mehrere Dateien auswählen

Optionen
Nur JAR-Dateien verschlüsseln
Verschlüsselt nur die JAR-Dateien, ohne die gesamte JRE bereitzustellen. Diese Option wird normalerweise in Kombination mit der KeySeed-Funktion verwendet, um bestehende Programme zu aktualisieren.
Ausführbare Datei erstellen
Erstellen Sie eine ausführbare Datei zum Starten der Anwendung, bitte fügen Sie keine .exe-Erweiterung hinzu.

Konsole ausblenden
Diese Option ist nur für GUI-Programme unter Windows wirksam und dient dazu, das Befehlszeilenfenster während der Programmausführung auszublenden.
JVM-Optionen
Legen Sie JVM-Optionen fest, wie z.B. -Xmx und -Xms, getrennt durch Leerzeichen oder Zeilenumbrüche.
Ausgabe

Java-Versionsauswahl
Wählen Sie die Java-Version, unterstützt werden Java 8, Java 11, Java 17 und Java 21
Neuen Ordner erstellen
Standardmäßig ausgewählt, die Verschlüsselungsaufgabe erstellt eine Datei namens p4j-[task-id] im Ausgabeordner. Das Ausgabeergebnis wird in diesem Ordner gespeichert.
Einschließlich JavaFX
Wenn es sich um eine JavaFX-Anwendung handelt, wählen Sie bitte diese Option
SWT-Anwendung
Wenn es sich um eine SWT-Anwendung handelt, wählen Sie bitte diese Option.
KeySeed
Die Verschlüsselungsaufgabe fordert standardmäßig einen zufälligen Schlüssel vom Server zur Verschlüsselung an. Dateien, die in verschiedenen Verschlüsselungsaufgaben generiert wurden, können nicht zusammen verwendet werden. Wenn ein KeySeed angegeben wird, generiert derselbe KeySeed denselben Verschlüsselungsschlüssel. Diese Option kann mit der vorherigen Option "Nur JAR-Dateien verschlüsseln" verwendet werden, um bestehende Anwendungen zu aktualisieren. Diese Option ist nur für lizenzierte Benutzer gültig.
Verschlüsselungsaufgabe ausführen
Bitte warten Sie einen Moment. Nach Abschluss der Verschlüsselungsaufgabe können Sie das Ausgabeergebnis der verschlüsselten Anwendung im Ausgabeordner sehen.

Verschlüsselte Anwendungen ausführen
Es gibt drei Möglichkeiten, die verschlüsselte Anwendung auszuführen
- Mit EXE-Datei ausführen
Wenn die Zielplattform Windows ist, können Sie die verschlüsselte Anwendung mit der während der Verschlüsselungsaufgabe generierten ausführbaren Datei ausführen.
- Mit Skript ausführen
Wenn die Zielplattform Linux oder macOS ist, finden Sie eine Skriptdatei mit dem Namen exe-name.sh, mit der Sie die Anwendung ausführen können.
- Das Programm mit dem traditionellen Java-Befehl ausführen
Sie können das Programm auch manuell mit vlxjre/bin/java ausführen. Das Format dieses Befehls ist dasselbe wie beim normalen Java-Befehl.
Im Ausgabeverzeichnis sehen wir einen Ordner namens vlxjre, der unsere angepasste JRE ist, und die verschlüsselten JAR-Dateien sind im Ordner vlxlib gespeichert.
vlxjre/bin/java -jar vlxlib/xxx.jar
vlxjre/bin/java -cp vlxlib/xxx.jar MainClass
vlxjre/bin/java -cp "vlxlib/*" MainClass
vlxjre/bin/java -Xms512M -Xmx1024m -cp "vlxlib/*" MainClass
Java 8 unterstützt derzeit nicht das Ausführen über vlxjre/bin/java -jar. Bitte verwenden Sie vlxjre/bin/java -cp xx MainClass
Hinweise
Wenn die Zielplattform dieses Programms macOS oder Linux ist, es aber unter Windows erstellt wurde, führen Sie bitte add-executable-permission.sh auf der Zielplattform aus, um dem Programm vor dem ersten Start Ausführungsberechtigungen zu erteilen.
JVM-Parameter der EXE-Datei ändern
Windows
Wenn Sie die JVM-Parameter der EXE-Datei ändern müssen, bearbeiten Sie exe-name.json und ändern Sie die Werte im JArgs-Array.
"JArgs": [
"-DParam1=value1",
"-DParam2=value2"
]
Linux und macOS
Öffnen Sie einfach die Skriptdatei und fügen Sie JVM-Parameter hinzu oder ändern Sie diese.
JavaSE-Anwendungen mit CLI-Tool verschlüsseln
Konfigurationsdatei
Das CLI-Tool muss eine Aufgabendatei als Parameter angeben.
Wechseln Sie zum Ordner protector4j/task-templates, suchen Sie java-task.yml, kopieren und bearbeiten Sie eine.
# Available values: 8,11,17,21
javaVersion: 17
# The jar files that need to be encrypted
jarFiles: []
# Only encrypt the jar files, do not deploy the runtime
# This option is used while upgrading an existing application
onlyEncryptJarFiles: false
## [ Executable file information ]
# The executable file name
exeFileName: ''
# Hide command line window, only valid for Windows
hideConsole: false
# The main class of this Java Application
mainClass: ''
# The splash image
splash: ''
# JVM Options
jvmOptions: []
## [ Output Options ]
# The output folder
outputFolder: ''
# Create a new and unique folder for the application, the folder name is like p4j-<taskId>
createNewFolder: true
# Whether this is a JavaFX application
includeJavaFX: false
# Whether this a swt gui application
swtApplication: false
# Fixed key seed, only avaiable for licensed user
# Jars encrypted in different tasks can be used together with same key seed
keySeed: ''
# The target platforms
# available values: [win, linux, mac] or empty for current platform
platforms: []
Verschlüsselungsaufgabe ausführen
Wechseln Sie zum Protector4J-Ordner und führen Sie den folgenden Befehl aus.
Linux oder macOS
Für macOS-Benutzer finden Sie das CLI-Tool unter /Applictions/Protector4J.app/Contents/protector4j-mac.
./p4j -t java -f path-of-task-file
Windows
p4j -t java -f path-of-task-file
Sie können p4j --help ausführen, um die detaillierten Parameter anzuzeigen.
Mit Kontoinformationen ausführen
./p4j -t java -f path-of-task-file -u email -p password
Ergebnisse anzeigen
Nach Abschluss der Verschlüsselungsaufgabe gehen Sie bitte zum Ausgabeordner, um die Ergebnisse zu überprüfen.
Verschlüsselte Anwendungen ausführen
Es gibt drei Möglichkeiten, die verschlüsselte Anwendung auszuführen
- Mit EXE-Datei ausführen
Wenn die Zielplattform Windows ist, können Sie die verschlüsselte Anwendung mit der durch die Verschlüsselungsaufgabe generierten ausführbaren Datei ausführen.
- Mit Skript ausführen
Wenn die Zielplattform Linux oder macOS ist, finden Sie eine Skriptdatei mit dem Namen exe-name.sh, mit der Sie die Anwendung ausführen können.
- Das Programm mit dem traditionellen Java-Befehl ausführen
Sie können das Programm auch manuell mit vlxjre/bin/java ausführen. Das Format dieses Befehls ist dasselbe wie beim normalen Java-Befehl.
Im Ausgabeverzeichnis sehen wir einen Ordner namens vlxjre, der unsere angepasste JRE ist, und die verschlüsselten JAR-Dateien sind im Ordner vlxlib gespeichert.
vlxjre/bin/java -jar vlxlib/xxx.jar
vlxjre/bin/java -cp vlxlib/xxx.jar MainClass
vlxjre/bin/java -cp "vlxlib/*" MainClass
vlxjre/bin/java -Xms512M -Xmx1024m -cp "vlxlib/*" MainClass
Java 8 unterstützt derzeit nicht das Ausführen über vlxjre/bin/java -jar. Bitte verwenden Sie vlxjre/bin/java -cp xx MainClass
Hinweise
Wenn die Zielplattform dieses Programms macOS oder Linux ist, es aber unter Windows erstellt wurde, führen Sie bitte add-executable-permission.sh auf der Zielplattform aus, um dem Programm vor dem ersten Start Ausführungsberechtigungen zu erteilen.