JAVA-PKG-SIMPLE.ECLASS
章节: eclass-manpages (5)更新: 2024年11月
索引 返回主内容
名称
java-pkg-simple.eclass - 简化 Java 软件打包的 Eclass。描述
此类旨在从 Java 源代码构建纯 Java 软件包,无需使用源代码附带的任何构建说明。它不支持生成源文件或控制生成的 jar 的 META-INF,尽管可以通过在调用此 eclass 的 src_compile 函数之前将相应的文件放入目标目录中,由 ebuild 解决这些问题。支持的 EAPI
7 8函数
- java-pkg-simple_src_compile
- 用于简单裸源 Java 软件包的 src_compile。在 ${JAVA_SRC_DIR} 中查找所有 *.java 源文件,使用从 ${JAVA_GENTOO_CLASSPATH} 计算出的类路径编译它们,并将生成的类打包到单个 ${JAVA_JAR_FILENAME} 中。如果文件 target/META-INF/MANIFEST.MF 存在,则将其用作创建的 jar 的清单。
如果存在 USE 标记 'binary' 并已设置,它将只将 ${JAVA_BINJAR_FILENAME} 复制到 ${S} 并跳过 src_compile 的其余部分。
- java-pkg-simple_src_install
- 用于简单单个 jar Java 软件包的 src_install。只需安装 ${JAVA_JAR_FILENAME}。如果设置了 ${JAVA_MAIN_CLASS},它还会安装一个启动器。还会调用 einstalldocs。
- java-pkg-simple_src_test
- 用于简单单个 Java jar 文件的 src_test。它将使用 ejavac 从测试源编译测试类,并使用 ${JAVA_TESTING_FRAMEWORKS} 中定义的框架执行测试。使用其他编译器(如 groovyc)编译的测试类需要放在“generated-test”目录中,因为此目录的内容将被保留,而 target/test-classes 的内容将被删除。
Eclass 变量
- JAVA_GENTOO_CLASSPATH
- 要包含在类路径中的 Java 软件包的逗号或空格分隔列表。这些软件包也将被注册为此新软件包的运行时依赖项。依赖关系将被传递计算。有关合适的软件包名称,请参阅“java-config -l”。
JAVA_GENTOO_CLASSPATH="foo,bar-2"
- JAVA_GENTOO_CLASSPATH_EXTRA
- 要放在编译源代码时的类路径上的额外冒号分隔路径元素列表。
- JAVA_CLASSPATH_EXTRA
- 仅在编译源代码期间需要的额外逗号或空格分隔的 Java 软件包列表。
- JAVA_NEEDS_TOOLS
- 将 tools.jar 添加到 gentoo.classpath。仅应用于构建时目的,依赖关系不会记录到 package.env。
- JAVA_SRC_DIR
- 相对于 ${S} 的目录数组,其中包含应用程序的源代码。如果将 ${JAVA_SRC_DIR} 设置为字符串,它也可以工作。默认值 "" 表示它将获取 ${S} 内的所有源文件。对于生成的源代码包(如果源代码列在 ${JAVA_PKG_IUSE} 中),重要的是这些目录实际上是相应源代码树的根目录。
JAVA_SRC_DIR=( "impl/src/main/java/" "arquillian/weld-ee-container/src/main/java/" )
- JAVA_RESOURCE_DIRS
- 相对于 ${S} 的目录数组,其中包含应用程序的资源。如果未设置变量,则不会将任何资源添加到编译的 jar 文件中。
JAVA_RESOURCE_DIRS=("src/java/resources/")
- JAVA_ENCODING ?= UTF-8
- 源文件中使用的字符编码。
- JAVAC_ARGS
- 要传递给 javac 的其他参数。
- JAVA_MAIN_CLASS
- 如果 Java 具有主类,则将设置变量,以便我们可以生成正确的 MANIFEST.MF 并创建启动器。
JAVA_MAIN_CLASS="org.gentoo.java.ebuilder.Main"
- JAVA_AUTOMATIC_MODULE_NAME
- Automatic-Module-Name 条目的值,它将添加到 MANIFEST.MF 中。
- JAVADOC_ARGS
- 要传递给 javadoc 的其他参数。
- JAVA_JAR_FILENAME ?= ${PN}.jar
- 要创建和安装的 jar 文件的名称。
- JAVA_BINJAR_FILENAME
- 如果设置了 USE 标记 'binary',则要安装的二进制 jar 文件的名称。
- JAVA_LAUNCHER_FILENAME
- 如果设置了 ${JAVA_MAIN_CLASS},我们将创建一个启动器来执行 jar,而 ${JAVA_LAUNCHER_FILENAME} 将是脚本的名称。
- JAVA_TESTING_FRAMEWORKS
- 一个空格分隔的列表,用于定义在 src_test 期间应启动哪些测试。
JAVA_TESTING_FRAMEWORKS="junit pkgdiff"
- JAVA_TEST_RUN_ONLY
- 在 src_test() 期间应执行的类的数组。此变量优先于 JAVA_TEST_EXCLUDES,即如果设置了此变量,则忽略另一个变量。
JAVA_TEST_RUN_ONLY=( "net.sf.cglib.AllTests" "net.sf.cglib.TestAll" )
- JAVA_TEST_EXCLUDES
- 在 src_test() 期间不应执行的类的数组。
JAVA_TEST_EXCLUDES=( "net.sf.cglib.CodeGenTestCase" "net.sf.cglib.TestAll" )
- JAVA_TEST_GENTOO_CLASSPATH
- 在编译和运行测试源代码时所需的额外类路径。
- JAVA_TEST_SRC_DIR
- 相对于 ${S} 的目录数组,其中包含测试的源代码。它几乎等同于 src_test 中的 ${JAVA_SRC_DIR}。
- JAVA_TEST_RESOURCE_DIRS
- 它几乎等同于 src_test 中的 ${JAVA_RESOURCE_DIRS}。
作者
Java 维护者 <[email protected]>维护者
[email protected]报告 Bug
请通过 https://bugs.gentoo.org/ 报告 Bug。文件
java-pkg-simple.eclass另请参阅
ebuild(5)https://gitweb.gentoo.org/repo/gentoo.git/log/eclass/java-pkg-simple.eclass
索引
此文档由 man2html 使用手册页创建。
时间: 2024年11月12日 格林尼治标准时间03:27:01