Schützen Sie JavaSE-Anwendungen

Einführungsvideos

▶️ YouTube

▶️ Bilibili

Herunterladen

Besuchenhttps://protector4j.com/downloadum die neueste Version herunterzuladen

Installation

Windows und Linux

Es sind keine besonderen Installationsschritte erforderlich. Laden Sie einfach das Archiv herunter und extrahieren Sie es.

macOS

Laden Sie die DMG-Datei herunter und ziehen Sie Protector4J inApplications. Der eigentliche Inhalt dieses Tools ist in/Applications/Protector4J.app/Contents/protector4j-mac

Verschlüsseln Sie JavaSE-Anwendungen mit GUI-Tools

Gehe zum Protector4J-Ordner und führe ausp4j-ui[.exe], sehen Sie die folgende Benutzeroberfläche.

Für macOS-Benutzer doppelklicken Sie einfach wie bei einer normalen Mac-Anwendung auf Protector4J.app.

Anmeldung

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

Wählen Sie den Anwendungstyp

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

Wählen Sie die zu verschlüsselnde Jar/War-Datei aus

Wählen Sie die zu verschlüsselnden Jar/War-Dateien aus. Sie können eine oder mehrere Dateien auswählen.

Optionen

Nur Jar-Dateien verschlüsseln

Nur die Jar-Dateien verschlüsseln, ohne die gesamte jre bereitzustellen. Diese Option wird normalerweise in Kombination mit der KeySeed-Funktion verwendet, um vorhandene Programme zu aktualisieren.

Ausführbare Datei erstellen

Erstellen Sie eine ausführbare Datei zum Starten der Anwendung, fügen Sie bitte keine .exe-Erweiterung hinzu.

Versteckte Konsole

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

JVM-Optionen

Legen Sie JVM-Optionen wie -Xmx und -Xms fest, getrennt durch Leerzeichen oder Zeilenumbrüche.

Ausgabe

Java-Version Auswahl

Wählen Sie die Java-Version, die Java 8, Java 11, Java 17 und Java 21 unterstützt

Neuen Ordner erstellen

Standardmäßig erstellt die Verschlüsselungsaufgabe eine Datei mit dem Namen p4j-[Aufgaben-ID] im Ausgabeordner. Das Ausgaberesultat 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

Der Verschlüsselungsauftrag fordert standardmäßig einen zufälligen Schlüssel vom Server für die Verschlüsselung an. Dateien, die in verschiedenen Verschlüsselungsaufträgen generiert wurden, können nicht zusammen verwendet werden. Wenn KeySeed angegeben ist, wird derselbe KeySeed denselben Verschlüsselungsschlüssel generieren. Diese Option kann mit der vorherigen "Nur Jar-Dateien verschlüsseln"-Option verwendet werden, um vorhandene Anwendungen zu aktualisieren. Diese Option ist nur für lizenzierte Benutzer gültig.

Verschlüsselungsaufgabe ausführen

Bitte warten Sie eine Weile. Nachdem die Verschlüsselungsaufgabe abgeschlossen ist, 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

  1. Mit der exe-Datei ausführen

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

  1. Mit Skript ausführen

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

  1. Programm mit traditionellem Java-Befehl ausführen

Sie können das Programm auch manuell mit vlxjre/bin/java ausführen, das Format dieses Befehls ist dasselbe wie der normale java-Befehl.

Wir können einen Ordner namens vlxjre im Ausgabeverzeichnis sehen, bei dem es sich um unsere angepasste JRE handelt, und die verschlüsselten JAR-Dateien werden 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, aber es auf Windows erstellt wurde, führen Sie bitte aus add-executable-permission.sh auf der Zielplattform, um vor dem ersten Start die Ausführungsberechtigung für das Programm zu gewähren.

Ändern Sie die JVM-Parameter der exe-Datei

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 sie.

JavaSE-Anwendungen mit CLI-Tool verschlüsseln.

Konfigurationsdatei

CLI-Tool muss eine Aufgabendatei als Parameter angeben.

Gehen Sie zu dem protector4j/task-templatesOrdner, findenjava-task.yml, kopieren und ändern.

# 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.

Gehen Sie zum Protector4J-Ordner und führen Sie den folgenden Befehl aus.

Linux oder macOS

Für macOS-Benutzer ist 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 ausführenp4j --helpum 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

  1. Mit exe-Datei ausführen

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

  1. Mit Skript ausführen

Wenn die Zielplattform Linux oder macOS ist, finden Sie eine Skriptdatei mit dem Namenexe-name.sh, Sie 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 der normale java-Befehl.

Wir können einen Ordner namens vlxjre im Ausgabeverzeichnis sehen, bei dem es sich um unsere angepasste JRE handelt, und die verschlüsselten JAR-Dateien werden 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 jedoch auf Windows erstellt wurde, führen Sie bitte aus add-executable-permission.sh auf der Zielplattform, um vor dem ersten Start die Ausführungsberechtigung für das Programm zu gewähren.