I have an Oracle Middleware ADF Application (JDeveloper 12.2.1.4.0) converted to Maven Project. Locally on my Windows PC everything runs. Maven pipeline successfully generates ear-file.
On the CD/CI pipeline only the native Maven task using Java compiler work smoothly. The next step where ojmake compiler involved fails with a package does not exist and cannot find symbol error messages.
All the Maven dependencies were successfully loaded during the standard Java compiler step. Oracle ojmake-compiler don't see them and seems to fail loading them again.
Does ojmake still relay on classic JDeveloper classpath stored in the jpr-file? How can I synchronize pom.xml with the jpr-descriptor?
ojmakedoesn't use the jpr-file to find dependencies. JDeveloper 12 abandons this part of the jpr-descriptor. As the project was converted to the Maven-project, the dependencies are managed only by pom.xml. The appropriate part of the JPR stays untouched and it is not used anymore.(AFAIK it worked differently in JDeveloper 11. It synchronized the dependency list between pom.xml and jpr-file)
The problem is the way, that ojmake probably uses not the same setting.xml file as the standard Maven compiler.
On CD/CI server it is common, that
settings.xmldoesn't exists in the home directory of the user. In this case Maven uses/opt/apache-maven-3.6.3/conf/setting.xmlsetting.xmlis overwritten by the CDCI-Server (for example Bamboo or Jenkins)The problem:
ojmakealways searches for Maven configuration in the home directory~/.m2/settings.xml. If the file doesn't exists,ojmakecannot find the Maven repository server and fails.UPDATE: Please ensure
ojmakein your pom.xml.exeextension in the filename.