美文网首页
如何制作自己的本地Maven包,并在POM文件中引入

如何制作自己的本地Maven包,并在POM文件中引入

作者: 阿拉斌 | 来源:发表于2019-09-27 11:59 被阅读0次

在使用spring-boot进行发中,我们都会接触到一个叫pom的文件,这个文件里面会声明一些我们项目需要使用到的第三方的包。那么,我们如何使用pom来添加自己的包呢?

首先,我们需要新建一个maven项目:


image.png

填好相应的信息


image.png

这样我们一个基础的maven项目就建好了


image.png

我们在pom文件中,配置下阿里的仓库

    <!-- 阿里云maven仓库 -->
    <repositories>
        <repository>
            <id>public</id>
            <name>aliyun nexus</name>
            <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
            <releases>
                <enabled>true</enabled>
            </releases>
        </repository>
    </repositories>
    <pluginRepositories>
        <pluginRepository>
            <id>public</id>
            <name>aliyun nexus</name>
            <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
            <releases>
                <enabled>true</enabled>
            </releases>
            <snapshots>
                <enabled>false</enabled>
            </snapshots>
        </pluginRepository>
    </pluginRepositories>

然后我们就可以愉快的写代码了,首先把现在项目中对字符串操作的类复制进来


image.png

然后引入一些其他的包,这些都是我的包里面需要用的,所以我就都贴进来了

    <dependencies>
        <!-- https://mvnrepository.com/artifact/com.fasterxml.jackson.core/jackson-databind -->
        <dependency>
            <groupId>com.fasterxml.jackson.core</groupId>
            <artifactId>jackson-databind</artifactId>
            <version>2.10.0.pr1</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/com.alibaba/fastjson -->
        <dependency>
            <groupId>com.alibaba</groupId>
            <artifactId>fastjson</artifactId>
            <version>1.2.58</version>
        </dependency>
        <!--EXCEL导入导出-->
        <dependency>
            <groupId>cn.afterturn</groupId>
            <artifactId>easypoi-base</artifactId>
            <version>3.3.0</version>
        </dependency>
        <dependency>
            <groupId>cn.afterturn</groupId>
            <artifactId>easypoi-web</artifactId>
            <version>3.3.0</version>
        </dependency>
        <dependency>
            <groupId>cn.afterturn</groupId>
            <artifactId>easypoi-annotation</artifactId>
            <version>3.3.0</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api -->
        <dependency>
            <groupId>javax.servlet</groupId>
            <artifactId>javax.servlet-api</artifactId>
            <version>4.0.1</version>
            <scope>provided</scope>
        </dependency>
        <!-- https://mvnrepository.com/artifact/org.apache.commons/commons-lang3 -->
        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-lang3</artifactId>
            <version>3.9</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/org.apache.commons/commons-io -->
        <dependency>
            <groupId>org.apache.commons</groupId>
            <artifactId>commons-io</artifactId>
            <version>1.3.2</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/org.springframework.data/spring-data-redis -->
        <dependency>
            <groupId>org.springframework.data</groupId>
            <artifactId>spring-data-redis</artifactId>
            <version>2.1.9.RELEASE</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/org.apache.ant/ant 对压缩文件进行操作-->
        <dependency>
            <groupId>org.apache.ant</groupId>
            <artifactId>ant</artifactId>
            <version>1.10.5</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/org.apache.logging.log4j/log4j-core -->
        <dependency>
            <groupId>org.apache.logging.log4j</groupId>
            <artifactId>log4j-core</artifactId>
            <version>2.12.0</version>
        </dependency>
        <!-- 中文转拼音https://mvnrepository.com/artifact/com.belerweb/pinyin4j -->
        <dependency>
            <groupId>com.belerweb</groupId>
            <artifactId>pinyin4j</artifactId>
            <version>2.5.1</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/com.auth0/java-jwt -->
        <dependency>
            <groupId>io.jsonwebtoken</groupId>
            <artifactId>jjwt</artifactId>
            <version>0.9.1</version>
        </dependency>
        <dependency>
            <groupId>com.auth0</groupId>
            <artifactId>java-jwt</artifactId>
            <version>3.8.1</version>
        </dependency>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.12</version>
            <scope>test</scope>
        </dependency>
        <!-- https://mvnrepository.com/artifact/com.google.code.gson/gson -->
        <dependency>
            <groupId>com.google.code.gson</groupId>
            <artifactId>gson</artifactId>
            <version>2.8.5</version>
        </dependency>
        <!-- https://mvnrepository.com/artifact/org.aspectj/aspectjrt -->
        <dependency>
            <groupId>org.aspectj</groupId>
            <artifactId>aspectjrt</artifactId>
            <version>1.9.4</version>
        </dependency>
    </dependencies>

在同步完所有的包后,我们就可以写一些测试用例。来对这个String的工具进行测试


image.png

编写测试代码


image.png

测试完成后,我们就可以发布到本地的maven仓库了

这里有几个发布的方法,版本的升级最好使用命令的形式进行升级

升级版本的命令:mvn versions:set -DnewVersion=1.0.2
执行命令(不带注释的打包):mvn install
执行命令(带方法注释):mvn clean source:jar install -DskipTests

image.png

之后,我们就可以在其他的项目里面直接引用了

在其他的项目里面,复制我们的名称粘贴进去,然后更新maven的依赖

        <dependency>
            <groupId>allahbin</groupId>
            <artifactId>utils</artifactId>
            <version>1.0-SNAPSHOT</version>
        </dependency>

这样我们就可以愉快的使用这个包的代码啦

image.png

至于发布到maven中,等我有时间,我再弄吧,现在这样也挺好的,哈哈哈。

GitHub地址:暂无

相关文章

网友评论

      本文标题:如何制作自己的本地Maven包,并在POM文件中引入

      本文链接:https://www.haomeiwen.com/subject/lygouctx.html