我有一个已转换为 Maven 项目的 Oracle 中间件 ADF 应用程序 (JDeveloper 12.2.1.4.0)。在我的 Windows PC 上,一切都在本地运行。 Maven pipeline 成功生成ear-file。
在 CD/CI 管道上,只有使用 Java 编译器的本机 Maven 任务才能顺利工作。 ojmake 编译器涉及的下一步失败,并出现
package does not exist
和 cannot find symbol
错误消息。
在标准 Java 编译器步骤中,所有 Maven 依赖项均已成功加载。 Oracle ojmake-compiler 看不到它们,并且似乎无法再次加载它们。
ojmake 是否仍然依赖 jpr 文件中存储的经典 JDeveloper 类路径?如何将 pom.xml 与 jpr-descriptor 同步?
ojmake
不使用 jpr 文件来查找依赖项。 JDeveloper 12 放弃了 jpr 描述符的这一部分。由于项目已转换为 Maven 项目,因此依赖项仅由 pom.xml 管理。 JPR 的相应部分保持不变,不再使用。
(据我所知,它在 JDeveloper 11 中的工作方式有所不同。它同步了 pom.xml 和 jpr 文件之间的依赖项列表)
问题在于,ojmake 可能使用与标准 Maven 编译器不同的setting.xml 文件。
在 CD/CI 服务器上,常见的是
settings.xml
不存在于用户的主目录中。在这种情况下,Maven 使用
/opt/apache-maven-3.6.3/conf/setting.xml
setting.xml
被 CDCI 服务器(例如 Bamboo 或 Jenkins)覆盖问题:
ojmake
总是在主目录~/.m2/settings.xml
中搜索Maven配置。如果该文件不存在,ojmake
无法找到 Maven 存储库服务器并失败。
更新:请确保
ojmake
的正确路径。exe
扩展名。