Universal Robots Forum

Help using external dependencies / Including dependencies in plugin bundle

Hey,

I am trying to use the j2mod dependency in my urcap. I got the latest build form maven repository, and included the dependency in my pom.xml file.

Then, adding the artifact id to the <Embed-Dependency>j2mod;scope=compile|runtime</Embed-Dependency> tag in the maven bundle plugin, and exclude from the <Import-Package> !com.ghgande.j2mod, com.ur.urcap.api*, *</Import-Package> tag.

This cases polyscope to want jSerialComm, Slf4j-api, Slf4j-impl… and so on. It seems to be a never ending dependency tree. So far my pom looks like this.

<Embed-Dependency>j2mod, jSerialComm, slf4j-api, slf4j-log4j12, log4j-core ;scope=compile|runtime</Embed-Dependency>
						<Embed-Transitive>true</Embed-Transitive>
						<Import-Package>
							!com.ghgande.j2mod,
							com.ur.urcap.api*,
							*
						</Import-Package>
					</instructions>
				</configuration>
			</plugin>
			...
		</plugins>
	</build>

	<dependencies>
		<dependency>
			<groupId>org.osgi</groupId>
			<artifactId>org.osgi.core</artifactId>
			<version>4.3.0</version>
			<scope>provided</scope>
		</dependency>

		<dependency>
			<groupId>com.ur.urcap</groupId>
			<artifactId>api</artifactId>
			<version>1.13.0</version>
			<scope>provided</scope>
		</dependency>

		<!-- Extended dependencies -->
		<dependency>
			<groupId>com.ghgande</groupId>
			<artifactId>j2mod</artifactId>
			<version>3.0.0</version>
		</dependency>

		<dependency>
			<groupId>com.fazecast</groupId>
			<artifactId>jSerialComm</artifactId>
			<version>2.7.0</version>
		</dependency>


		<dependency>
			<groupId>org.slf4j</groupId>
			<artifactId>slf4j-api</artifactId>
			<version>1.7.21</version>
		</dependency>

		<dependency>
			<groupId>org.slf4j</groupId>
			<artifactId>slf4j-log4j12</artifactId>
			<version>1.7.25</version>
			<!-- <scope>test</scope> -->
		</dependency>

		<dependency>
			<groupId>org.apache.logging.log4j</groupId>
			<artifactId>log4j-core</artifactId>
			<version>2.14.1</version>
			<!-- <scope>test</scope> -->
		</dependency>

		<!-- test dependencies -->
		<dependency>
			<groupId>junit</groupId>
			<artifactId>junit</artifactId>
			<version>4.12</version>
			<scope>test</scope>
		</dependency>
	</dependencies>

please help.