我正在尝试使用 maven 构建一个 jar,这个 jar 是使用 ant 构建的。
当我从 maven 运行测试时,我得到了一个:
ERROR org.hibernate.tool.hbm2ddl.SchemaValidator could not complete schema validation
org.apache.commons.dbcp.SQLNestedException: Cannot load JDBC driver class 'net.sourceforge.jtds.jdbc.Driver'
来自:
Caused by: java.lang.ClassNotFoundException: net.sourceforge.jtds.jdbc.Driver
at java.net.URLClassLoader$1.run(URLClassLoader.java:200)
当我在没有运行测试的情况下构建 jar 时,它已构建但缺少一些 .class 和 .properties 文件,因此此 jar 未按预期运行。
为了更简洁,我的 jar 中缺少应该来自/test 文件夹的编译文件。
可能是我的 pom.xml 中添加了一些错误的依赖项?
最佳答案
I get a (...)
java.lang.ClassNotFoundException: net.sourceforge.jtds.jdbc.Driver
您很可能缺少 jTDS 依赖项。您是否在 pom.xml
中声明了它?
<dependency>
<groupId>net.sourceforge.jtds</groupId>
<artifactId>jtds</artifactId>
<version>1.2.4</version>
</dependency>
使用适合您的任何版本(也可能调整范围)。
To be more concise , in my jar are missing compiled files which should come from /test folder
这不会发生也不应该发生,测试源和资源不会被 Maven 打包到最终的 jar 中,这是一件好事。如果这些文件应该打包在最终的 jar 中,请将它们的源移动到源代码树(而不是测试树)。
关于java - 从 Maven 运行测试失败并停止构建 jar,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3364934/