一,实例:新建了一个Maven项目,在eclipse中通过 build path –> configure path….将依赖包添加到工程中后,eclipse不报错了。但是用Maven命令 mvn clean compile 时出错如下:
原因是在eclipse中添加了 exteneral jar后,还需要在maven中再添加依赖的jar包
Maven手动添加第三方依赖包有两种方法:
参考:maven 添加第三方依赖 maven中把依赖的JAR包一起打包
第一种方法是使用Maven命令添加,另一种方法则是修改pom.xml文件添加。
现介绍修改pom.xml文件添加:假设我的依赖包在C:UsersxxxDesktopstorm.starterstorm.starterlibdatasource.jar
在pom.xml中添加dependency如下:
com.my.test datasource 1.0 system C:UsersxxxDesktopstorm.starterstorm.starterlibdatasource.jar
再重新编译即可成功,会在项目的根目录下生成 targetclasses 目录,里面就是生成的各种 .class 文件
再运行, mvn clean package 就可以将所有的编译好的 .class 文件打成 jar包了。但是,这里貌似没有解决代码中存在依赖第三方jar包的问题。???
可以使用maven-assembly-plugin插件将工程依赖的jar都一起打包,在pom.xml中添加配置如下:
<build><plugins><plugin><artifactId>maven-assembly-pluginartifactId><version>2.4version><configuration><descriptorRefs><descriptorRef>jar-with-dependenciesdescriptorRef>descriptorRefs>configuration><executions><execution><id>make-assemblyid><phase>packagephase><goals><goal>singlegoal>goals>execution>executions>plugin>plugins>build>
这时,Maven将会自动地根据
另外,用Maven编译运行项目的一些知识参考:Maven编译代码的相关命令
二,在命令行中编译JAVA文件。假设 Test.java 存放在 commy estTest.java ,且 Test.java 源代码里面的package语句: package com.my.test;
编译 : javac commy estTest.java
打jar包: jar cvf test.jar com estmyTest.class
查看jar包中的内容: jar vtf test.jar