New plugin module says "out of sync" when trying to add plugin dependency for new module [message #1720914] |
Thu, 21 January 2016 19:05 |
David M. Karr Messages: 800 Registered: July 2009 |
Senior Member |
|
|
I inherited a large codebase for an Eclipse plugin, and many of the concepts of Eclipse plugin development are new to me.
I discovered that one of the plugin subprojects just had a small set of jars stored in a "lib" folder, with "Bundle-ClassPath" entries referencing those jars. I need to move away from that and replace the "hard-stored" jars with Maven GAV references. I've read about the issues with Tycho doing "p2-first" or "pom-first", which is mostly described here. I sort of understand the basic process.
For some context, the original module with the hard-stored jars is called "core" (full name is a little longer than that). I defined a new module called "maventhirdparty", and here's an excerpt of its "pom.xml" that shows the dependencies that need to be bundled, and the instructions provided to the maven-bundle-plugin:
<dependency>
<groupId>org.antlr</groupId>
<artifactId>antlr4-runtime</artifactId>
<version>4.0</version>
</dependency>
<dependency>
<groupId>org.mapdb</groupId>
<artifactId>mapdb</artifactId>
<version>1.0.4</version>
</dependency>
<dependency>
<groupId>org.opendaylight.yangtools</groupId>
<artifactId>yang-model-api</artifactId>
<version>0.6.1</version>
</dependency>
<dependency>
<groupId>org.opendaylight.yangtools</groupId>
<artifactId>yang-parser-impl</artifactId>
<version>0.6.1</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<groupId>org.apache.felix</groupId>
<artifactId>maven-bundle-plugin</artifactId>
<extensions>true</extensions>
<configuration>
<instructions>
<Embed-Dependency>
antlr4-runtime, mapdb, yang-model-api, yang-parser-impl
</Embed-Dependency>
<_exportcontents>
org.opendaylight.yangtools.*, org.antlr.*, org.mapdb.*
</_exportcontents>
<Bundle-ClassPath>{maven-dependencies}</Bundle-ClassPath>
<Embed-Transitive>true</Embed-Transitive>
<Embed-Directory>jars</Embed-Directory>
<_failok>true</_failok>
<_nouses>true</_nouses>
</instructions>
</configuration>
</plugin>
</plugins>
I ran the build for this module, and then inspected the resulting jar and manifest, and it seemed ok to me.
At this point, I tried to edit the plugin dependencies of the "core" module. When the "add" dialog came up, it listed at the top the modules in my project, including the new one, but that line had a red X on it, and it had "(out of sync)" at the end of the row.
This is the only error marker I can find anywhere, and there is no information more than the "(out of sync)" on the row. This is what it looks like:
Despite this having an error marker, it lets me add the dependency, but the red mark comes with it, displaying on the entry in both the "Required Plug-ins" list, and in the properties detail for that new row. There is no additional information or error message, not even in the "Problems" view for either the referencing or referenced module.
What's going on here?
|
|
|
|
|
|
Powered by
FUDForum. Page generated in 0.01939 seconds