zoukankan      html  css  js  c++  java
  • Maven 手动添加第三方依赖包及编译打包和java命令行编译JAVA文件并使用jar命令打包

    一,实例:新建了一个Maven项目,在eclipse中通过 build path –> configure path….将依赖包添加到工程中后,eclipse不报错了。但是用Maven命令 mvn clean compile 时出错如下:

    1

    原因是在eclipse中添加了 exteneral jar后,还需要在maven中再添加依赖的jar包

     

    Maven手动添加第三方依赖包有两种方法:

    参考:maven 添加第三方依赖              maven中把依赖的JAR包一起打包

    第一种方法是使用Maven命令添加,另一种方法则是修改pom.xml文件添加。

    现介绍修改pom.xml文件添加:假设我的依赖包在C:UsersxxxDesktopstorm.starterstorm.starterlibdatasource.jar

    在pom.xml中添加dependency如下:

    <dependency>
                <groupId>com.my.test</groupId>
                <artifactId>datasource</artifactId>
                <version>1.0</version>
                <scope>system</scope>
                <systemPath>C:UsersxxxDesktopstorm.starterstorm.starterlibdatasource.jar</systemPath>
            </dependency>

    再重新编译即可成功,会在项目的根目录下生成 targetclasses 目录,里面就是生成的各种 .class 文件

    再运行, mvn clean package 就可以将所有的编译好的 .class 文件打成 jar包了。但是,这里貌似没有解决代码中存在依赖第三方jar包的问题。???

    可以使用maven-assembly-plugin插件将工程依赖的jar都一起打包,在pom.xml中添加配置如下:

    <build>
        <plugins>
          <plugin>
            <artifactId>maven-assembly-plugin</artifactId>
            <version>2.4</version>
            <configuration>
              <descriptorRefs>
                <descriptorRef>jar-with-dependencies</descriptorRef>
              </descriptorRefs>
            </configuration>
            <executions>
              <execution>
                <id>make-assembly</id>
                <phase>package</phase>
                <goals>
                  <goal>single</goal>
                </goals>
              </execution>
            </executions>
          </plugin>
        </plugins>
      </build>

    这时,Maven将会自动地根据 <dependency> </dependency>中的 <scope> </scope>参数来决定将哪些依赖的jar包也一起打包。

    另外,用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

  • 相关阅读:
    tcl基本语法
    linux hostid与lmhostid
    linux下uptime命令
    介绍一下 WebApplicationContext?
    Spring 由哪些模块组成?
    怎样开启注解装配?
    解释不同方式的自动装配 ?
    @Qualifier 注解有什么用?
    解释 Spring 框架中 bean 的生命周期?
    如何在 spring 中启动注解装配?
  • 原文地址:https://www.cnblogs.com/hapjin/p/4636307.html
Copyright © 2011-2022 走看看