ClassNotFoundException:使用service mix时未找到com.mysql.jdbc.Driver
我将servicemix 4.4.1与maven 3.0.4一起使用。我对servicemix/java世界非常陌生——我的主要知识是c#/php 我已将以下内容添加到我的一条路线中:ClassNotFoundException:使用service mix时未找到com.mysql.jdbc.Driver,jdbc,apache-servicemix,classnotfound,Jdbc,Apache Servicemix,Classnotfound,我将servicemix 4.4.1与maven 3.0.4一起使用。我对servicemix/java世界非常陌生——我的主要知识是c#/php 我已将以下内容添加到我的一条路线中: <bean id="dataSource" class="org.springframework.jdbc.datasource.SimpleDriverDataSource"> <property name="driverClass" value="com.mysql.jdbc.Drive
<bean id="dataSource" class="org.springframework.jdbc.datasource.SimpleDriverDataSource">
<property name="driverClass" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://10.10.10.29/ServiceMix"/>
<property name="username" value="somet"/>
<property name="password" value="somet"/>
</bean>
通过谷歌搜索,我发现我的POM中缺少了一些行,因此我添加了以下内容:
<osgi-import-package>
org.apache.servicemix.bundles.commons-dbcp
</osgi-import-package>
但是,现在当我尝试启动捆绑包时,我得到:
Error executing command: Could not start bundle mvn:com.boohoo/boohoo-esb-products-sage-internal/1.0-SNAPSHOT in feature(s) boohoo-esb-products-sage-internal-1.0-SNAPSHOT: Unresolved constraint in bundle boohoo-esb-products-sage-internal [256]: Unable to resolve 256.0: missing requirement [256.0] package; (package=org.apache.servicemix.bundles.commons-dbcp)
我还做了一些谷歌搜索,说我可以向项目中添加一个清单文件,以便允许动态导入。因此,我在项目的路径中添加了一个名为:MANIFEST.MF的新文件,并在该文件中添加了以下内容:
Fragment-Host:
org.apache.commons.dbcp
DynamicImport-Package:
*
但这也没有任何效果。我觉得我好像在兜圈子。任何帮助/指点都很好
我希望一切都有道理,但如果没有,就直说吧,我会尽力解释得更好
干杯。解决了这个问题。我更新了我的代码如下:
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
<property name="driverClassName" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://10.10.10.29/ServiceMix"/>
<property name="username" value="something"/>
<property name="password" value="something"/>
</bean>
POM:
org.apache.commons.dbcp
org.apache.servicemix.bundles
org.apache.servicemix.bundles.commons-dbcp
1.4_3
已删除清单文件。
已从servicemix卸载commons池。请注意,此错误的另一个原因可能是缺少mysql连接器!在Karaf shell中使用此命令安装: 安装-s mvn:mysql/mysql连接器java/5.1.18
Error executing command: Could not start bundle mvn:com.boohoo/boohoo-esb-products-sage-internal/1.0-SNAPSHOT in feature(s) boohoo-esb-products-sage-internal-1.0-SNAPSHOT: Unresolved constraint in bundle boohoo-esb-products-sage-internal [256]: Unable to resolve 256.0: missing requirement [256.0] package; (package=org.apache.servicemix.bundles.commons-dbcp)
Fragment-Host:
org.apache.commons.dbcp
DynamicImport-Package:
*
<bean id="dataSource" class="org.apache.commons.dbcp.BasicDataSource" destroy-method="close">
<property name="driverClassName" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://10.10.10.29/ServiceMix"/>
<property name="username" value="something"/>
<property name="password" value="something"/>
</bean>
<osgi-import-package>
org.apache.commons.dbcp
</osgi-import-package>
<dependency>
<groupId>org.apache.servicemix.bundles</groupId>
<artifactId>org.apache.servicemix.bundles.commons-dbcp</artifactId>
<version>1.4_3</version>
</dependency>