JAVA框架封装(三):maven项目构建及依赖导入

其实,一开始写这个框架,我都是以普通java项目编写的,现在,公布出来,那就不能用普通java项目的形式了,得改成maven项目。然后,我会把项目上传到github上,可以大家一起开发。把项目改成maven项目,也是各种纠结,都是pom.xml配置文件的问题,弄得脑壳疼,想死的心都有!!!其实之前也用过maven和git,但都用得比较简单。之前使用maven,也只是安装maven,然后使用开发给的命令,把项目打包,发布到测试环境。但是自己编写一个maven项目,却没有真正意义上的做过。主要遇到的问题有:

1. 写好依赖配置,提示jar is missing,原因不明,我把写好的配置剪切再粘贴回去,就好了。

2. 依赖配置换行缩进,空格不一样,可能也会引起依赖配置不能正确读取

3. maven本地仓库明明已经有jar,但是代码里import不到,这个就是让我头疼不已的问题。让我头疼,倒不是这个问题难解决,而是这个问题,与另一个问题一起出现,扰乱了我的视线。另一个问题就是jdbc驱动包换了版本,驱动也不一样。然后我换过驱动,还有加载不了驱动,真实的原因就是仓库有jar,但加载不到。然而我却执着于表象,总以为是驱动不对,或是数据库配置不对。兜兜转转,没有找到问题的根本,再怎么弄,也解决不了问题,最后弄得身心俱疲。最后,我把本地仓库的驱动包删了,让maven重新下载一次,就可以了。中间试过重建maven本地索引,没有解决。

如果想要使用命令行,运行maven进行项目打包,那么就需要安装maven,至于安装maven的步骤,网上的教程一大把,这里就不写了,资源在我的网盘里也有,不过是3.6.0版本的,现在应该不是最新的版本。资源地址:            https://pan.baidu.com/s/1MX4t_kT3iNHmtIsO67YqXQ,提取码:nn1k,在maven文件夹下。

当然,使用网盘里的eclipse的话,里面就已经集成了maven,可以不安装maven。那么,接下来,就使用eclipse来构建一个maven项目,首先,打开eclipse,在左边的项目列表区,空白处右击,选择new-Other...

上面的输入框输入maven,再点击Maven Project,Next  —>

Next ——>

选择 quickstart,Next ——>

Group Id填写org.kingeasy,我为这个框架取名为kingeasy,一级域名org,代表是开源的。Artifact Id填写base,这个先就这么填,后面再改,Finish ——>

项目的目录结构就是这样的,然后点击项目名,按F2,把项目改名为kingeasy,再双击pom.xml,打开文件

点击右下的pom.xml,换成源码模式,然后把下面的配置复制进去

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  <modelVersion>4.0.0</modelVersion>

  <groupId>org.kingeasy</groupId>
  <artifactId>kingeasy</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <packaging>jar</packaging>

  <name>kingeasy</name>
  <url>http://maven.apache.org</url>

  <properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <maven.compiler.source>1.8</maven.compiler.source>  
    <maven.compiler.target>1.8</maven.compiler.target> 
  </properties>
  
  <dependencies>
  	<!-- junit依赖 -->
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.12</version>
      <scope>test</scope>
    </dependency>
    
    <!-- jackson依赖 -->
   <dependency>
     <groupId>com.fasterxml.jackson.core</groupId>
     <artifactId>jackson-core</artifactId>
     <version>2.9.7</version>
   </dependency>
    <!-- jackson依赖 -->
   <dependency>
     <groupId>com.fasterxml.jackson.core</groupId>
     <artifactId>jackson-databind</artifactId>
     <version>2.9.7</version>
  </dependency>
  <!-- jackson依赖 -->
  <dependency>
     <groupId>com.fasterxml.jackson.core</groupId>
     <artifactId>jackson-annotations</artifactId>
     <version>2.9.7</version>
  </dependency>
  <!-- servlet依赖 -->
  <dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>javax.servlet-api</artifactId>
    <version>3.0.1</version>
    <scope>provided</scope>
  </dependency>
  <!-- 连接池c3p0依赖 -->
  <dependency>
    <groupId>com.mchange</groupId>
    <artifactId>c3p0</artifactId>
    <version>0.9.5.4</version>
  </dependency>
    <!-- mysql连接驱动依赖 -->
    <dependency>
      <groupId>mysql</groupId>
      <artifactId>mysql-connector-java</artifactId>
      <version>6.0.6</version>
    </dependency>
  </dependencies>
  
  <build>
    <pluginManagement>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>3.6.1</version>
                <configuration>
                    <source>1.8</source>
                    <target>1.8</target>
                </configuration>
            </plugin>
        </plugins>
    </pluginManagement>
  </build>

</project>

然后就会看到项目中引入了相关的jar文件了

好了,右击项目,Run As —— Maven clean

出现BUILD SUCCESS,就代表成功了,当然,如果你电脑是第一次执行这个命令,会下载很多东西,因为maven要执行clean命令,要下载相关的jar文件,才能执行这个命令。

然后,再执行安装命令,右击项目,Run As —— Maven install

执行这个,下载的东西就更多了,最后出现BUILD SUCCESS就代表安装成功了。执行安装,会先执行编译命令,再执行测试命令,然后才是安装,有关maven命令执行的一些细节,大家可以自己找度娘了解。那么现在安装了,安装的东西在哪?

首先,在项目的target目录下,会有一个kingeasy....jar的文件,这个就是安装文件,实际上就是项目打成的jar包。同时在maven的本地仓库里,也会有一份这个文件,如果没有设置maven本地仓库的话,那么maven的本地仓库默认是在用户的目录下的.m2文件夹。

看上面的目录,repository是仓库目录,org和kingeasy是Group Id,最后面的kingeasy是Artifact Id,再下面的0.0.1-SNAPSHOT就是版本,每一个版本,都会有一个文件夹,文件夹的名称就是版本号,maven就简单介绍这些,更详细的,大家自己找资料学习吧

欢迎加入测试群:91425817,一起讨论测试的那此事。

发布了47 篇原创文章 · 获赞 9 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/kingzhsh/article/details/97501857
今日推荐