Schützen Sie JavaSE-Anwendungen

Einführungsvideos

▶️ YouTube

▶️ Bilibili

Herunterladen

Besuchen https://protector4j.com/download die neueste Version herunterladen

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 per Drag & Drop nach ApplicationsDer eigentliche Inhalt dieses Tools befindet sich in /Applications/Protector4J.app/Contents/protector4j-mac

JavaSE-Anwendungen mit GUI-Tools verschlüsseln

Wechseln Sie in den Protector4J-Ordner und führen Sie die folgende Aktion aus: p4j-ui[.exe]Sie sehen dann die folgende Benutzeroberfläche.

macOS-Benutzer können Protector4J.app wie eine normale Mac-Anwendung per Doppelklick starten.

Login

Wenn Sie bereits eine Lizenz erworben haben, klicken Sie bitte auf den Anmeldebutton oben rechts und geben Sie Ihre Benutzerdaten ein. Falls Sie keine Lizenz besitzen, können Sie dieses Tool trotzdem testen.

Anwendungstyp auswählen

Klicken Sie auf der Seite „Anwendungstyp“ auf die Schaltfläche „JavaSE-Anwendung“.

Wählen Sie die zu verschlüsselnde JAR-/WAR-Datei aus.

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

Es werden nur die JAR-Dateien verschlüsselt, ohne die gesamte JRE bereitzustellen. Diese Option wird üblicherweise 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 Dateiendung .exe hinzu.

Versteckte Konsole

Diese Option ist nur für GUI-Programme unter Windows wirksam und dient dazu, das Befehlszeilenfenster während der Programmausführung auszublenden.

JVM-Optionen

JVM-Optionen wie -Xmx und -Xms werden durch Leerzeichen oder Zeilenumbrüche getrennt angegeben.

Ausgabe

Java-Versionsauswahl

Wählen Sie die Java-Version aus. Unterstützt werden Java 8, Java 11, Java 17 und Java 21.

Neuen Ordner erstellen

Bei der Standardeinstellung wird beim Verschlüsselungsvorgang eine Datei mit dem Namen p4j-[task-id] im Ausgabeverzeichnis erstellt. Das Ausgabeergebnis wird in diesem Verzeichnis gespeichert.

einschließlich JavaFX

Falls es sich um eine JavaFX-Anwendung handelt, wählen Sie bitte diese Option aus.

SWT-Anwendung

Falls es sich um eine SWT-Anwendung handelt, wählen Sie bitte diese Option aus.

KeySeed

Der Verschlüsselungsvorgang fordert standardmäßig einen zufälligen Schlüssel vom Server an. Dateien, die in verschiedenen Verschlüsselungsvorgängen generiert wurden, können nicht zusammen verwendet werden. Wenn ein KeySeed angegeben wird, generiert derselbe KeySeed denselben Verschlüsselungsschlüssel. Diese Option kann zusammen 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üsselung können Sie das Ergebnis der verschlüsselten Anwendung im Ausgabeverzeichnis einsehen.

Führen Sie verschlüsselte Anwendungen aus

Es gibt drei Möglichkeiten, die verschlüsselte Anwendung auszuführen.

  1. Mit der EXE-Datei ausführen

Wenn die Zielplattform Windows ist, können Sie die verschlüsselte Anwendung mit der während des Verschlüsselungsvorgangs generierten ausführbaren Datei ausführen.

  1. Mit Skript ausführen

Wenn die Zielplattform Linux oder macOS ist, finden Sie dort eine Skriptdatei mit dem Namen exe-name.shSie können die Anwendung mit dieser Skriptdatei ausführen.

  1. 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 enthält, 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 die Ausführung über vlxjre/bin/java -jar. Bitte verwenden Sie stattdessen vlxjre/bin/java -cp xx MainClass.

Bekanntmachungen

Wenn die Zielplattform dieses Programms macOS oder Linux ist, es aber unter Windows erstellt wurde, führen Sie bitte Folgendes aus: add-executable-permission.sh auf der Zielplattform, um dem Programm vor dem ersten Start die Ausführungsberechtigung zu erteilen.

Ändern Sie die JVM-Parameter der EXE-Datei.

Windows

Falls Sie die JVM-Parameter der EXE-Datei ändern müssen, bearbeiten Sie diese. exe-name.json und die Werte im JArgs-Array ändern.

"JArgs": [
  "-DParam1=value1",
  "-DParam2=value2"
]

Linux und macOS

Öffnen Sie einfach die Skriptdatei und fügen Sie die JVM-Parameter hinzu oder ändern Sie diese.

JavaSE-Anwendungen mit einem CLI-Tool verschlüsseln.

Konfigurationsdatei

Das CLI-Tool muss eine Aufgabendatei als Parameter angeben.

Gehe zu protector4j/task-templates Ordner, finden java-task.yml, kopieren und modifizieren Sie eines.

# 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 in den Protector4J-Ordner und führen Sie den folgenden Befehl aus.

Linux oder macOS

macOS-Benutzer finden das CLI-Tool unter /Applictions/Protector4J.app/Contents/protector4j-macDie

./p4j -t java -f path-of-task-file

Windows

p4j -t java -f path-of-task-file

Sie können ausführen p4j --help 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 des Verschlüsselungsvorgangs überprüfen Sie bitte die Ergebnisse im Ausgabeverzeichnis.

Führen Sie verschlüsselte Anwendungen aus

Es gibt drei Möglichkeiten, die verschlüsselte Anwendung auszuführen.

  1. Mit der EXE-Datei ausführen

Wenn die Zielplattform Windows ist, können Sie die verschlüsselte Anwendung mit der vom Verschlüsselungsprozess erzeugten ausführbaren Datei ausführen.

  1. Mit Skript ausführen

Wenn die Zielplattform Linux oder macOS ist, finden Sie dort eine Skriptdatei mit dem Namen exe-name.shSie können die Anwendung mit dieser Skriptdatei ausführen.

  1. 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 enthält, 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 die Ausführung über vlxjre/bin/java -jar. Bitte verwenden Sie stattdessen vlxjre/bin/java -cp xx MainClass.

Bekanntmachungen

Wenn die Zielplattform dieses Programms macOS oder Linux ist, es aber unter Windows erstellt wurde, führen Sie bitte Folgendes aus: add-executable-permission.sh auf der Zielplattform, um dem Programm vor dem ersten Start die Ausführungsberechtigung zu erteilen.