我有一个java / maven项目,完美地运行一些数据库的东西(classpath工作得很好)。我使用专有的数据库jar来连接数据库。当我将我的软件打包到阴影罐中时,专有的罐子没有被引用。当我检查日志文件时,我看到了这个错误:
Exception: java.lang.ClassNotFoundException: com.sybase.jdbc4.jdbc.SybDriver
我试图使用Maven将所有内容放入阴影罐中。有什么我不做的事吗?为什么数据库jar不能在我的新阴影罐中工作?
添加树荫插件配置:
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>2.4.3</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<transformers>
<transformer
implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
<mainClass>package.class</mainClass>
</transformer>
</transformers>
<shadedArtifactAttached>true</shadedArtifactAttached>
<shadedClassifierName>launcher</shadedClassifierName>
</configuration>
</execution>
</executions>
</plugin>
我已按照有关设置文件存储库的说明操作,因为我们没有公司存储库。
我在c:\ my-repo创建了一个文件夹,并将单独的jconn4.jar文件放入其中。然后我将其添加到我的pom.xml中:
<repositories>
<repository>
<id>my-local-repo</id>
<url>file://${basedir}/my-repo</url>
</repository>
</repositories>
和
<dependency>
<groupId>company</groupId>
<artifactId>jconn4.jar</artifactId>
<version>16.0</version>
</dependency>
最后,在命令提示符下我运行了命令:
$ mvn org.apache.maven.plugins:maven-install-plugin:2.3.1:install-file -Dfile=C:\my-repo\jconn4.jar -DgroupId=company -DartifactId=jconn4.jar -Dversion=16.0 -Dpackaging=jar -DlocalRepositoryPath=C:\my-repo
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building My_Project 0.0.1-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-install-plugin:2.3.1:install-file (default-cli) @ My_Project ---
[INFO] Installing C:\my-repo\jconn4.jar to C:\my-repo\company\jconn4.jar\16.0\jconn4.jar-16.0.jar
[INFO] Installing C:\Users\jsmith\AppData\Local\Temp\mvninstall7806841451724024532.pom to C:\my-repo\company\jconn4.jar\16.0\jconn4.jar-16.0.pom
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 0.613 s
[INFO] Finished at: 2016-12-08T10:26:08-05:00
[INFO] Final Memory: 7M/245M
[INFO] ------------------------------------------------------------------------
这一切都很好,但我现在继续在我的pom.xml中收到此错误&#34; Missing artifact company:jconn4.jar:jar:16.0&#34;
我是否错误地实施了某些内容?