<dependency>
<groupId> com.m2.repo.path</groupId>
<artifactId>UtilityJar</artifactId>
<version>UtilityJar_V13-SNAPSHOT</version>
<scope>provided</scope>
</dependency>
The error occurs specifically during the map compilation phase when the compiler tries to introspect Java compute node classes that reference types from the provided dependency. Other Maven dependencies (like slf4j) work fine because they're only used in field declarations, not in method signatures or exception handling.
Adding UtilityJar as an explicit project reference in the consuming project's .project file and adding --project UtilityJar to the ibmint command resolves the issue.
When executing the same ibmint command on v12 the command completes successfully.
The questions I have are:
- Is this a breaking change in ACE v13's dependency resolution? In v12, the map compiler seemed to resolve Maven dependencies, but v13 appears to require explicit
.project references.
- Is there a better solution than adding project references to every project that require those dependencies? We have many projects that depend on jars like this, and adding explicit references everywhere is not maintainable.
- Is this the intended behavior, or is it a bug? The fact that it worked in v12 suggests this might be unintended.
Thanks!