运行Maven构建的项目时,jtds没有合适的驱动程序异常

时间:2020-03-05 18:52:56  来源:igfitidea点击:

我们有一个简单的spring-hibernate应用程序(控制台应用程序),其中我们在可执行jar文件的清单文件中设置了类路径。然后该应用程序使用jtds驱动程序连接到数据库,一切都将在Windows计算机和jdk1.6上按预期工作。但是在Linux上,该应用无法找到驱动程序,
我们正在使用java -jar MainClassName运行该程序

对于为什么会发生这种情况的任何建议,我们深表感谢。

解决方案

回答

老实说,这听起来像是糟糕的CLASSPATH。我建议开始调试此问题的一件事是将jtds程序包复制到与主程序包/类相同的路径,并查看其是否有效。这样,我们可以确保Classpath清单是问题还是不是问题。 Spring / Hibernate依赖于lib目录,因此它始终位于类路径中,因为它是主要结构。也使用lib目录进行测试。

希望本指南对我们有所帮助。还发送更多信息,例如路径,类路径和清单文件。

回答

发生此问题是因为我们的jdbc.url具有无效的url。这是因为maven在分析时将jdbc.url属性视为特殊属性,而不是在filter.properties中定义的url。这就是"没有合适的驱动程序"异常的原因。这个问题应该更清楚了。

总之,要解决此问题,我们必须将jdbc.url属性重命名为jdbc.url.somename。这解决了我们有关Maven分析的问题。对于名为" server.name"的属性,我们也遇到了类似的Maven分析问题。此过滤器属性也使Maven分析变得混乱。我们还必须更改该属性的名称。

再次感谢费尔南多。

回答

这是一个Maven错误
http://jira.codehaus.org/browse/MNG-3563