基本思路:采用java编写一个工具,生成bat脚本
import java.io.File;
import java.io.IOException;
public class UploadJar2Nexus {
public static String settingXml="";
public static String dir="";
public static String groupId="";
public static String repositoryId="";
public static String url="";
public static void main(String[] args) throws IOException {
if(args[0].equals("-h")||args[0].equals("-H")||args[0].equals("-help")||args.length != 5)
{
help();
return;
}
readArgs(args);
File dir = new File(args[0]);
File[] flist = dir.listFiles();
for(File f:flist)
{
if(f.isFile())
{
String _path=f.getAbsolutePath();
String _artifactId = f.getName().substring(0,f.getName().lastIndexOf("-"));
String _version=f.getName().substring(f.getName().lastIndexOf("-")+1, f.getName().lastIndexOf("."));
StringBuffer cmdStr= new StringBuffer("");
cmdStr.append("C:\\software\\apache-maven-3.6.0\\bin\\mvn.Cmd -s ");
cmdStr.append(settingXml);
cmdStr.append(" deploy:deploy-file -Dfile=");
cmdStr.append(_path);
cmdStr.append(" -DgroupId=");
cmdStr.append(groupId);
cmdStr.append(" -DartifactId=");
cmdStr.append(_artifactId);
cmdStr.append(" -Dversion=");
cmdStr.append(_version);
cmdStr.append(" -Dpackaging=jar -DrepositoryId=");
cmdStr.append(repositoryId);
cmdStr.append(" -Durl=");
cmdStr.append(url);
cmdStr.append(" -X");
System.out.println(cmdStr.toString());
}
}
}
public static void help()
{
System.out.println("Usage: java -jar UploadJar2Nexus dir groupId repositoryId url settingXml");
System.out.println("example: java -jar UploadJar2Nexus C:\\lib com releases http://localhost:8090/repository/maven-releases/ C:\\apache-maven-3.6.0\\conf\\setting.xml");
}
public static void readArgs(String[] args)
{
System.out.println("dir:"+args[0]);
System.out.println("groupId:"+args[1]);
System.out.println("repositoryId:"+args[2]);
System.out.println("url:"+args[3]);
System.out.println("settingXml:"+args[4]);
dir=args[0];
groupId=args[1];
repositoryId=args[2];
url=args[3];
settingXml=args[4];
}
}
在该工具目录下执行生成的bat脚本,与pom.xml同一级目录执行, pom.xml配置
<distributionManagement>
<repository>
<id>releases</id>
<name>releases</name>
<url>http://localhost:8090/repository/maven-releases/</url>
</repository>
<snapshotRepository>
<id>snapshots</id>
<name>snapshots</name>
<url>http://localhost:8090/repository/maven-snapshots/</url>
</snapshotRepository>
</distributionManagement>
maven的setting.xml文件中配置
<server>
<id>releases</id>
<username>admin</username>
<password>admin123</password>
</server>
<mirror>
<id>releases</id>
<name>nexus repository</name>
<url>http://localhost:8090/repository/maven-releases/</url>
<mirrorOf>releases</mirrorOf>
</mirror>
<repository>
<id>releases</id>
<url>http://localhost:8090/repository/maven-releases/</url>
<releases>
<enabled>true</enabled>
</releases>
<snapshots>
<enabled>true</enabled>
<updatePolicy>always</updatePolicy>
</snapshots>
</repository>
1051

被折叠的 条评论
为什么被折叠?



