Proteger aplicaciones JavaSE
Vídeos de introducción
Descargar
Visita https://protector4j.com/descargar para descargar la última versión
Instalación
Windows y Linux
No hay pasos de instalación especiales, simplemente descargue el archivo y extráigalo.
macOS
Descargue el archivo dmg y arrastre Protector4J a Applications. El contenido real de esta herramienta se encuentra en /Applications/Protector4J.app/Contents/protector4j-mac

Cifrar aplicaciones JavaSE con herramientas GUI
Vaya a la carpeta Protector4J, ejecute p4j-ui[.exe]Verá la siguiente interfaz de usuario.
Para los usuarios de macOS, simplemente haga doble clic en Protector4J.app como una aplicación normal de Mac.

Acceso
Si ya adquirió la licencia, haga clic en el botón de inicio de sesión en la esquina superior derecha e ingrese su información de usuario. Si no tiene licencia, aún puede probar esta herramienta.

Seleccione el tipo de aplicación
Haga clic en el botón "Aplicación JavaSE" en la página de tipo de aplicación.

Seleccione el archivo jar/war que necesita ser cifrado
Seleccione los archivos jar/war que desea cifrar, puede seleccionar uno o varios archivos

Opciones
Cifrar únicamente archivos jar
Cifrar solo los archivos jar, sin implementar el JRE completo. Esta opción suele usarse junto con la función KeySeed para actualizar programas existentes.
Crear archivo ejecutable
Cree un archivo ejecutable para iniciar la aplicación, no agregue la extensión .exe.

Consola oculta
Esta opción solo es efectiva para programas GUI en Windows y se utiliza para ocultar la ventana de la línea de comandos durante la ejecución del programa.
Opciones de JVM
Establezca las opciones de JVM, como -Xmx y -Xms, separadas por espacios o saltos de línea.
producción

Selección de la versión de Java
Elija la versión de Java, compatible con Java 8, Java 11, Java 17 y Java 21
Crear nueva carpeta
Si se selecciona de forma predeterminada, la tarea de cifrado creará un archivo llamado p4j-[task-id] en la carpeta de salida. El resultado de salida se almacena en esta carpeta.
Incluyendo JavaFX
Si es una aplicación JavaFX, seleccione esta opción
Aplicación SWT
Si es una aplicación SWT, seleccione esta opción.
KeySeed
La tarea de cifrado solicitará una clave aleatoria del servidor de forma predeterminada. Los archivos generados en diferentes tareas de cifrado no pueden usarse juntos. Si se especifica KeySeed, esta generará la misma clave de cifrado. Esta opción se puede usar con la opción anterior "Solo cifrar archivos JAR" para actualizar aplicaciones existentes. Esta opción solo es válida para usuarios con licencia.
Ejecutar tarea de cifrado
Espere un momento, una vez completada la tarea de cifrado, podrá ver el resultado de salida de la aplicación cifrada en la carpeta de salida.

Ejecutar aplicaciones cifradas
Hay tres formas de ejecutar la aplicación cifrada
- Ejecutar con archivo exe
Si la plataforma de destino es Windows, puede ejecutar la aplicación cifrada con el archivo ejecutable generado durante la tarea de cifrado.
- Ejecutar con script
Si la plataforma de destino es Linux o macOS, puede encontrar un archivo de script con el nombre exe-name.sh, puedes ejecutar la aplicación con este archivo de script.
- Ejecutar el programa con el comando tradicional de Java
También puede ejecutar manualmente el programa con vlxjre/bin/java, el formato de este comando es el mismo que el comando java normal.
Podemos ver una carpeta llamada vlxjre en el directorio de salida, que es nuestro JRE personalizado, y los archivos jar cifrados se almacenan en la carpeta vlxlib.
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 actualmente no admite la ejecución mediante vlxjre/bin/java -jar. Utilice vlxjre/bin/java -cp xx MainClass.
Avisos
Si la plataforma de destino de este programa es macOS o Linux, pero está creado en Windows, ejecute add-executable-permission.sh en la plataforma de destino para otorgar permiso de ejecución al programa antes del primer inicio.
Modificar los parámetros JVM del archivo exe
Ventanas
Si necesita modificar los parámetros JVM del archivo exe, edite exe-name.json y modificar los valores en la matriz JArgs.
"JArgs": [
"-DParam1=value1",
"-DParam2=value2"
]
Linux y macOS
Simplemente abra el archivo de script y agregue o modifique los parámetros JVM.
Cifre aplicaciones JavaSE con la herramienta CLI.
Archivo de configuración
La herramienta CLI necesita especificar un archivo de tarea como parámetro.
Ir a la protector4j/task-templates carpeta, buscar java-task.yml, copiar y modificar uno.
# 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: []
Ejecutar tarea de cifrado.
Vaya a la carpeta Protector4J y ejecute el siguiente comando.
Linux o macOS
Para los usuarios de macOS, puede encontrar la herramienta CLI en /Applictions/Protector4J.app/Contents/protector4j-mac.
./p4j -t java -f path-of-task-file
Ventanas
p4j -t java -f path-of-task-file
Puedes ejecutar p4j --help para ver los parámetros detallados.
Ejecutar con información de la cuenta
./p4j -t java -f path-of-task-file -u email -p password
Ver resultados
Una vez completada la tarea de cifrado, vaya a la carpeta de salida para verificar los resultados.
Ejecutar aplicaciones cifradas
Hay tres formas de ejecutar la aplicación cifrada
- Ejecutar con archivo exe
Si la plataforma de destino es Windows, puede ejecutar la aplicación cifrada con el archivo ejecutable generado por la tarea de cifrado.
- Ejecutar con script
Si la plataforma de destino es Linux o macOS, puede encontrar un archivo de script con el nombre exe-name.sh, puedes ejecutar la aplicación con este archivo de script.
- Ejecutar el programa con el comando tradicional de Java
También puede ejecutar manualmente el programa con vlxjre/bin/java, el formato de este comando es el mismo que el comando java normal.
Podemos ver una carpeta llamada vlxjre en el directorio de salida, que es nuestro JRE personalizado, y los archivos jar cifrados se almacenan en la carpeta vlxlib.
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 actualmente no admite la ejecución mediante vlxjre/bin/java -jar. Utilice vlxjre/bin/java -cp xx MainClass.
Avisos
Si la plataforma de destino de este programa es macOS o Linux, pero está creado en Windows, ejecute add-executable-permission.sh en la plataforma de destino para otorgar permiso de ejecución al programa antes del primer inicio.