xsj工作笔记——将本地jar包手动添加到maven仓库

最近用网易云信做一个在某条件下发送报警短信的功能,但是在部署到服务器环境后出现 了

java.lang.ClassNotFoundException: com.alibaba.fastjson.JSON

度娘一下,解决办法基本都是:把jar放在lib目录下,然后我就照做了。。依然不管用;

一通分析,左试右试,终于搞好了:首先保证服务器环境下的lib文件夹要有这个jar,然后把jar包手动添加到maven仓库,下面上方法。


1.配置环境变量!

因为必须使用到命令行,所以配置本地jar之前要确定是否配置了maven的环境变量,如果没有配的自行百度,在这贴上一个链接,供伸手党使用。(注意!:执行mvn install:installfile命令时默认取settings.xml,所以,平时在ide中配置了其他名字的settings.xml的同学要注意了!)


2.用maven命令将jar包移动到maven的本地repository中吧!

pom.xml

  <build>
  <pluginManagement> 
  <plugins>
	  <plugin>
          <groupId>org.apache.maven.plugins</groupId>
          <artifactId>maven-jar-plugin</artifactId>
          <configuration>
              <archive>
                  <manifest>
                      <addClasspath>true</addClasspath>
                      <classpathPrefix>lib/</classpathPrefix>
                      <mainClass>com.twpow.equipment.run.App</mainClass>
                  </manifest>
              </archive>
          </configuration>
      </plugin>
 	   <plugin> 
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-dependency-plugin</artifactId>
            <executions>
                <execution>
                    <id>copy-dependencies</id>
                    <phase>prepare-package</phase>
                    <goals>
                        <goal>copy-dependencies</goal>
                    </goals>
                    <configuration>
                        <outputDirectory>${project.build.directory}/lib</outputDirectory>
                        <overWriteReleases>false</overWriteReleases>
                        <overWriteSnapshots>false</overWriteSnapshots>
                        <overWriteIfNewer>true</overWriteIfNewer>
                    </configuration>
                </execution>
            </executions>
        </plugin> 
  </plugins>
  </pluginManagement> 
 </build>

 注:如果出现这个问题的话,只需像上段代码一样,加上

 <pluginManagement></pluginManagement>,就不报错了,

 具体原因未知,可能是m2e插件有问题

<dependency>
  <groupId>httpclient</groupId>
  <artifactId>httpclient</artifactId>
  <version>4.5.3</version>
</dependency>

语法:

mvn install:install-file -Dfile=(jar包的位置) -DgroupId=(dependency对应的groupId) -DartifactId=(dependency对应的artifactId) -Dversion=(dependency对应的version) -Dpackaging=jar

例:

mvn install:install-file -Dfile=D:\BaiduNetdiskDownload\compmany\jars\httpclient-4.5.3.jar -DgroupId=httpclient
 -DartifactId=httpclient -Dversion=4.5.3 -Dpackaging=jar

如果看到出现如下提示的时候,表示添加成功啦!


猜你喜欢

转载自blog.csdn.net/qq_18494159/article/details/79169712