j2objc
La herramienta j2objc traduce los archivos fuente Java especificados en fuentes de Objective-C o de Objective-C++ para usar en una aplicación de iOS.
j2objc [ options ] file1.java ...
Se admiten las siguientes opciones. Para las opciones que toman una ruta, varios directorios y archivos jar se separan con un ":", como se hace con los comandos java
y javac
.
Opciones comunes
- -sourcepath <path>
- Especifica dónde se encuentran los archivos de origen de entrada.
- -classpath <path>
- Especifica dónde se encuentran los archivos de la clase del usuario.
- -d <directorio>
- Especifica dónde ubicar los archivos Objective-C generados.
- -encoding <codificación>
- Especifica la codificación de caracteres de los archivos de origen (predeterminada de UTF-8).
- -source <release>
- Proporciona compatibilidad de fuente con la versión especificada.
- -g
- Genera compatibilidad de depuración.
- -l, --list
- Enumera los archivos que se traducen.
- -v, --verbose
- Enviar mensajes sobre lo que hace el traductor
- -Werror
- Convertir todas las advertencias en errores
- -h, --help
- Imprime este mensaje.
Opciones de traducción
- --add-reads
- Opción reenviada directamente al compilador de Java (consulta la ayuda de javac para obtener más detalles).
- --allow-inherited-constructors
- No generes advertencias del compilador cuando el código nativo acceda a constructores heredados.
- --build-closure
- Traduce las clases dependientes si están desactualizadas (como lo hace
javac
). - --class-properties
- Genera propiedades de clase para variables estáticas y constantes de enumeración.
- --dead-code-report <archivo>
- Especifica un informe de uso de ProGuard para la eliminación de código no entregado.
- --doc-comments
- Traduce los comentarios de Javadoc a comentarios compatibles con Xcode.
- --doc-comments-warnings
- Informar advertencias al traducir comentarios de Javadoc
- -external-annotation-file <archivo>
- Especifica las anotaciones más comunes que afectan la transpilación en un archivo de índice de anotación de Java (formato definido por el marco de trabajo del verificador).
- -g:none
- No generes compatibilidad con la depuración.
- -g:relative
- Genera compatibilidad de depuración con rutas de acceso relativas.
- --generate-deprecated
- Genera atributos obsoletos para interfaces, clases y métodos obsoletos.
- -J<marca>
- Pasar un <flag> de Java, como
-Xmx1G
, al entorno de ejecución del sistema. - --mapping <archivo>
- Agrega un archivo de asignación de métodos.
- --no-class-properties
- No generes propiedades de clase para variables estáticas ni constantes de enumeración.
- --no-extract-unsequenced
- No reescribas expresiones que podrían producir errores de modificación no secuenciados.
- --no-nullability
- No generes anotaciones de nulidad de Objective-C.
- --no-package-directories
- No crees directorios para paquetes de Java cuando generes archivos.
- --no-segmented-headers
- Genera encabezados con protecciones alrededor de cada tipo declarado. Es útil para romper ciclos de importación.
- --no-wrapper-methods
- No generes métodos wrapper de Objective-C para constructores ni métodos estáticos. (J2ObjC genera funciones C para estos tipos de ejecutables)
- --nullability
- Convierte las anotaciones anulables y no nulas en anotaciones de Objective-C.
- --patch-module
- Opción reenviada directamente al compilador de Java (consulta la ayuda de javac para obtener más detalles).
- --prefix <package=prefix>
- Sustituye un prefijo especificado por un nombre de paquete.
- --prefixes <archivo>
- Especifica un archivo de propiedades con las definiciones de prefijos.
- --preserve-full-paths
- Genera archivos de salida con las mismas rutas relativas que los archivos de entrada.
- -processor <class1>[,<class2>...]
- Nombres de los procesadores de anotaciones que se ejecutarán; omite el proceso de descubrimiento predeterminado.
- -processorpath <path>
- Especifica dónde encontrar los procesadores de anotaciones.
- --reflection:{all,none,enum-constants,-enum-constants,name-mapping,-name-mapping}
- Generar o excluir la asistencia específica que se necesita para la reflexión de Java
- --reserved-names <archivo>
- Evita redefinir los identificadores presentes en los encabezados del sistema.
- --static-accessor-methods
- Genera métodos de acceso para variables estáticas y constantes de enumeración.
- --strip-gwt-incompatible
- Quita los métodos que están marcados con una anotación
GwtIncompatible
, a menos que se sepa que su valor es compatible. - --strip-reflection
- No generes los metadatos necesarios para la reflexión en Java (nota: esto reducirá significativamente la compatibilidad con la reflexión).
- --swift-friendly
- Genera código que facilite la importación de Swift (equivalente a --class-properties --nullability).
- --system
- Opción reenviada directamente al compilador de Java (consulta la ayuda de javac para obtener más detalles).
- -t, --timing-info
- Imprime el tiempo que dedicaste a los pasos de la traducción.
- --timing-info:{all,total,none}
- Imprime el tiempo que dedicaste a los pasos de la traducción.
- -use-arc
- Generar código de Objective-C para admitir el recuento automático de referencias (ARC)
- -use-reference-counting
- Genera código de Objective-C para admitir el recuento de referencias manuales de iOS (predeterminado).
- -version
- Información de la versión.
- -x <idioma>
- Especifica el idioma que se mostrará. Los valores posibles son objective-c (predeterminado) y objective-c++.
- -X
- Imprimir la ayuda para opciones no estándar.
Opciones no estándares
- -Xbootclasspath:<ruta>
- La ruta de inicio que usa la traducción (no la herramienta).
- -Xlint
- Habilitar todas las advertencias
- -Xlint:none
- Inhabilitar todas las advertencias no impuestas por la especificación del lenguaje Java.
- -Xlint:-xxx
- Inhabilita la advertencia xxx, en la que xxx es uno de los nombres de advertencia admitidos para -Xlint:xxx a continuación.
- -Xlint:cast
- Advertir sobre las expresiones de transmisión innecesarias y redundantes
- -Xlint:deprecation
- Advertir sobre el uso de elementos obsoletos.
- -Xlint:dep-ann
- Advierte sobre los elementos que se documentan con un comentario @deprecated de Javadoc, pero que no tienen una anotación @Deprecated.
- -Xlint:empty
- Advertir sobre las declaraciones vacías.
- -Xlint:fallthrough
- Verifica los bloques de cambio para casos caídos y proporciona un mensaje de advertencia para los que se encuentren.
- -Xlint:finally
- Advertir sobre las cláusulas finally que no se pueden completar con normalidad.
- -Xlint:rawtypes
- Advertir sobre las operaciones sin verificar en tipos sin procesar.
- -Xlint:serial
- Advertir sobre la falta de definiciones de serialVersionUID en las clases serializables.
- -Xlint:static
- Advertir sobre los métodos de serie a los que se llama en las instancias
- -Xlint:unchecked
- Proporciona más detalles sobre las advertencias de conversiones desmarcadas que indica la especificación de lenguaje Java.
- -Xlint:varargs
- Advertir sobre los usos no seguros de los métodos de argumentos variables (varargs), en particular, aquellos que contienen argumentos no verificables
- -Xno-jsni-warnings
- Advertir si se usan delimitadores de código nativo JSNI (GWT) en lugar de delimitadores de OCNI.