Maven依赖Mina:管理项目时出现"Missing artifact xxx bundle"问题

本文介绍了一个关于Apache Mina在使用OSGI bundle时遇到的依赖问题及解决方案。作者在尝试通过Maven管理Mina包的过程中遇到了依赖无法解析的问题,并最终通过添加maven-bundle-plugin插件解决了该问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

前言

这几天,了解和学习Apache Mina,使用Maven管理项目,可是生成项目时,一直报一个异常,查了很多资料,尝试了很多办法,就是木有解决,开始以为自己钻了牛角尖,将此问题放置几天,再来看,今天再次看,还是同样的问题,不过最后还是给解决了,记录下吧,算是一个教训。

问题

在使用Maven管理mina的包时,由于mina打包为bundle,此包为OSGI使用,OSGI的各个模块叫做bundle,OSGI,以前在公司使用过,做过一个项目,木有深入的了解,在管理mina的依赖时,首先生成项目的命令,运行此命令时,就出错了
D:\GitHub\java>mvn install eclipse:eclipse -Dwtpversion=2.0 -DdownloadSources=true

异常如下:
[ERROR] Failed to execute goal on project java: Could not resolve dependencies f
or project com.wds:java:jar:1.0-SNAPSHOT: The following artifacts could not be r
esolved: org.apache.mina:mina-core:bundle:2.0.7, org.apache.mina:mina-integratio
n-beans:bundle:2.0.7, org.apache.mina:mina-integration-ognl:bundle:2.0.7: Failur
e to find org.apache.mina:mina-core:bundle:2.0.7 in http://xxxxx:8081/nexus
/content/repositories/gvbase/ was cached in the local repository, resolution wil
l not be reattempted until the update interval of nexus has elapsed or updates a
re forced -> [Help 1]

pom.xml文件
<dependency>
			<groupId>org.apache.mina</groupId>
			<artifactId>mina-core</artifactId>
			<version>${mina-version}</version>
		</dependency>
		<dependency>
			<groupId>org.apache.mina</groupId>
			<artifactId>mina-transport-apr</artifactId>
			<version>${mina-version}</version>
		</dependency>
		<dependency>
			<groupId>org.apache.mina</groupId>
			<artifactId>mina-statemachine</artifactId>
			<version>${mina-version}</version>
		</dependency>
		<dependency>
			<groupId>org.apache.mina</groupId>
			<artifactId>mina-integration-xbean</artifactId>
			<version>${mina-version}</version>
		</dependency>
		<dependency>
			<groupId>org.apache.mina</groupId>
			<artifactId>mina-integration-ognl</artifactId>
			<version>${mina-version}</version>
		</dependency>
		<dependency>
			<groupId>org.apache.mina</groupId>
			<artifactId>mina-integration-jmx</artifactId>
			<version>${mina-version}</version>
		</dependency>
		<dependency>
			<groupId>org.apache.mina</groupId>
			<artifactId>mina-integration-beans</artifactId>
			<version>${mina-version}</version>
			<!--  <exclusions>
				<exclusion>
					<groupId>org.springframework</groupId>
      				<artifactId>spring</artifactId>
				</exclusion>
			
			</exclusions>-->
		</dependency>
		<dependency>
			<groupId>org.apache.mina</groupId>
			<artifactId>mina-filter-compression</artifactId>
			<version>${mina-version}</version>
		</dependency>

解决办法

在项目中的pom.xml文件中增加一个插件,配置如下:
<plugin>
	    			<groupId>org.apache.felix</groupId>
	   			<artifactId>maven-bundle-plugin</artifactId>
	   			<extensions>true</extensions>
			</plugin>
加上此配置,再运行命令,就可创建成功了!


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值