如何安装jar包到本地maven仓库呢?
使用如下命令即可:
mvn install:install-file -Dfile=e:\tmp\hijson\HiJson.jar -DgroupId=com.kunlunsoft5 -DartifactId=Hijson -Dversion=1.0.0 -Dpackaging=jar
参数说明:
-Dfile :指定jar路径
-DgroupId :指定jar包的groupId
-DartifactId :指定jar包的artifactId
我写了一个java swing图形界面,专门干这个事:
源代码如下:
package com.yunma.dialog; import java.awt.BorderLayout; import java.awt.EventQueue; import javax.swing.JFrame; import javax.swing.JPanel; import javax.swing.JScrollPane; import javax.swing.border.EmptyBorder; import java.awt.GridBagLayout; import javax.swing.JLabel; import java.awt.GridBagConstraints; import javax.swing.JTextField; import java.awt.Insets; import javax.swing.JButton; import com.cmd.dos.hw.util.CMDUtil; import com.string.widget.util.ValueWidget; import com.swing.component.AssistPopupTextArea; import com.swing.dialog.DialogUtil; import java.awt.event.ActionListener; import java.awt.event.ActionEvent; public class MavenTookitDialog extends JFrame { private static final long serialVersionUID = -3076948674378465960L; private JPanel contentPane; private JTextField jarTextField; private JTextField groupIdTextField_1; private JTextField artifactIdTextField_1; private JTextField versionTextField_1; private JTextField packagingTextField_1; private JTextField textField_1; public static final String MAVEN_INSTALL_JAR_CMD="mvn install:install-file -Dfile=%s -DgroupId=%s -DartifactId=%s -Dversion=%s -Dpackaging=%s"; private AssistPopupTextArea resultTextArea; /** * Launch the application. */ public static void main(String[] args) { EventQueue.invokeLater(new Runnable() { public void run() { try { MavenTookitDialog frame = new MavenTookitDialog(); frame.setVisible(true); } catch (Exception e) { e.printStackTrace(); } } }); } /** * Create the frame. */ public MavenTookitDialog() { setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); setTitle("安装本地jar"); setBounds(100, 100, 450, 300); contentPane = new JPanel(); contentPane.setBorder(new EmptyBorder(5, 5, 5, 5)); setContentPane(contentPane); GridBagLayout gbl_contentPane = new GridBagLayout(); gbl_contentPane.columnWidths = new int[]{0, 0, 0}; gbl_contentPane.rowHeights = new int[]{0, 0, 0, 0, 0, 0, 0, 0, 0}; gbl_contentPane.columnWeights = new double[]{0.0, 1.0, Double.MIN_VALUE}; gbl_contentPane.rowWeights = new double[]{0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 1.0, Double.MIN_VALUE}; contentPane.setLayout(gbl_contentPane); JLabel label = new JLabel("文件"); GridBagConstraints gbc_label = new GridBagConstraints(); gbc_label.insets = new Insets(0, 0, 5, 5); gbc_label.anchor = GridBagConstraints.WEST; gbc_label.gridx = 0; gbc_label.gridy = 0; contentPane.add(label, gbc_label); jarTextField = new JTextField(); GridBagConstraints gbc_textField = new GridBagConstraints(); gbc_textField.insets = new Insets(0, 0, 5, 0); gbc_textField.fill = GridBagConstraints.HORIZONTAL; gbc_textField.gridx = 1; gbc_textField.gridy = 0; contentPane.add(jarTextField, gbc_textField); jarTextField.setColumns(10); JLabel lblNewLabel = new JLabel("groupId"); GridBagConstraints gbc_lblNewLabel = new GridBagConstraints(); gbc_lblNewLabel.anchor = GridBagConstraints.WEST; gbc_lblNewLabel.insets = new Insets(0, 0, 5, 5); gbc_lblNewLabel.gridx = 0; gbc_lblNewLabel.gridy = 1; contentPane.add(lblNewLabel, gbc_lblNewLabel); groupIdTextField_1 = new JTextField(); GridBagConstraints gbc_groupIdTextField_1 = new GridBagConstraints(); gbc_groupIdTextField_1.insets = new Insets(0, 0, 5, 0); gbc_groupIdTextField_1.fill = GridBagConstraints.HORIZONTAL; gbc_groupIdTextField_1.gridx = 1; gbc_groupIdTextField_1.gridy = 1; contentPane.add(groupIdTextField_1, gbc_groupIdTextField_1); groupIdTextField_1.setColumns(10); JLabel lblArtifactid = new JLabel("artifactId"); GridBagConstraints gbc_lblArtifactid = new GridBagConstraints(); gbc_lblArtifactid.anchor = GridBagConstraints.WEST; gbc_lblArtifactid.insets = new Insets(0, 0, 5, 5); gbc_lblArtifactid.gridx = 0; gbc_lblArtifactid.gridy = 2; contentPane.add(lblArtifactid, gbc_lblArtifactid); artifactIdTextField_1 = new JTextField(); GridBagConstraints gbc_artifactIdTextField_1 = new GridBagConstraints(); gbc_artifactIdTextField_1.insets = new Insets(0, 0, 5, 0); gbc_artifactIdTextField_1.fill = GridBagConstraints.HORIZONTAL; gbc_artifactIdTextField_1.gridx = 1; gbc_artifactIdTextField_1.gridy = 2; contentPane.add(artifactIdTextField_1, gbc_artifactIdTextField_1); artifactIdTextField_1.setColumns(10); JLabel lblVersion = new JLabel("version"); GridBagConstraints gbc_lblVersion = new GridBagConstraints(); gbc_lblVersion.anchor = GridBagConstraints.WEST; gbc_lblVersion.insets = new Insets(0, 0, 5, 5); gbc_lblVersion.gridx = 0; gbc_lblVersion.gridy = 3; contentPane.add(lblVersion, gbc_lblVersion); versionTextField_1 = new JTextField(); GridBagConstraints gbc_versionTextField_1 = new GridBagConstraints(); gbc_versionTextField_1.insets = new Insets(0, 0, 5, 0); gbc_versionTextField_1.fill = GridBagConstraints.HORIZONTAL; gbc_versionTextField_1.gridx = 1; gbc_versionTextField_1.gridy = 3; contentPane.add(versionTextField_1, gbc_versionTextField_1); versionTextField_1.setColumns(10); JLabel lblPackaging = new JLabel("packaging"); GridBagConstraints gbc_lblPackaging = new GridBagConstraints(); gbc_lblPackaging.anchor = GridBagConstraints.WEST; gbc_lblPackaging.insets = new Insets(0, 0, 5, 5); gbc_lblPackaging.gridx = 0; gbc_lblPackaging.gridy = 4; contentPane.add(lblPackaging, gbc_lblPackaging); packagingTextField_1 = new JTextField("jar"); GridBagConstraints gbc_packagingTextField_1 = new GridBagConstraints(); gbc_packagingTextField_1.insets = new Insets(0, 0, 5, 0); gbc_packagingTextField_1.fill = GridBagConstraints.HORIZONTAL; gbc_packagingTextField_1.gridx = 1; gbc_packagingTextField_1.gridy = 4; contentPane.add(packagingTextField_1, gbc_packagingTextField_1); packagingTextField_1.setColumns(10); /*JLabel label_1 = new JLabel("预留"); GridBagConstraints gbc_label_1 = new GridBagConstraints(); gbc_label_1.anchor = GridBagConstraints.WEST; gbc_label_1.insets = new Insets(0, 0, 5, 5); gbc_label_1.gridx = 0; gbc_label_1.gridy = 5; contentPane.add(label_1, gbc_label_1); textField_1 = new JTextField(); GridBagConstraints gbc_textField_1 = new GridBagConstraints(); gbc_textField_1.insets = new Insets(0, 0, 5, 0); gbc_textField_1.fill = GridBagConstraints.HORIZONTAL; gbc_textField_1.gridx = 1; gbc_textField_1.gridy = 5; contentPane.add(textField_1, gbc_textField_1); textField_1.setColumns(10);*/ JPanel panel = new JPanel(); GridBagConstraints gbc_panel = new GridBagConstraints(); gbc_panel.insets = new Insets(0, 0, 5, 0); gbc_panel.gridwidth = 2; gbc_panel.fill = GridBagConstraints.BOTH; gbc_panel.gridx = 0; gbc_panel.gridy = 6; contentPane.add(panel, gbc_panel); JButton button_1 = new JButton("安装"); button_1.addActionListener(new ActionListener() { public void actionPerformed(ActionEvent e) { if(!DialogUtil.verifyTFAndExist(jarTextField, "jar 文件")){ return; } String jarPath=jarTextField.getText(); jarPath=jarPath.replace("\\", "/"); if(!DialogUtil.verifyTFEmpty(groupIdTextField_1, "groupId")){ return; } if(!DialogUtil.verifyTFEmpty(artifactIdTextField_1, "artifactId")){ return; } if(!DialogUtil.verifyTFEmpty(versionTextField_1, "version")){ return; } if(!DialogUtil.verifyTFEmpty(packagingTextField_1, "packaging")){ return; } String groupId=groupIdTextField_1.getText(); String artifactId=artifactIdTextField_1.getText(); String version=versionTextField_1.getText(); String packaging=packagingTextField_1.getText(); if(ValueWidget.isNullOrEmpty(packaging)){ packaging="jar"; } String cmd=String.format(MAVEN_INSTALL_JAR_CMD, jarPath,groupId,artifactId,version,packaging); // System.out.println(cmd); CMDUtil.getResult4cmd(cmd); resultTextArea.setText(cmd); } }); panel.add(button_1); JPanel panel_1 = new JPanel(); GridBagConstraints gbc_panel_1 = new GridBagConstraints(); gbc_panel_1.gridwidth = 2; gbc_panel_1.fill = GridBagConstraints.BOTH; gbc_panel_1.gridx = 0; gbc_panel_1.gridy = 7; contentPane.add(panel_1, gbc_panel_1); panel_1.setLayout(new BorderLayout(0, 0)); resultTextArea=new AssistPopupTextArea(); JScrollPane js=new JScrollPane(resultTextArea); panel_1.add(js); } }
CMDUtil.getResult4cmd的实现见
http://pan.baidu.com/s/1pJAaOif
中的com.cmd.dos.hw.util.CMDUtil
相关推荐
详解如何将本地JAR包添加到本地Maven仓库中 有些时候,当我们需要在自己的maven工程中添加一个确定的jar而发现Maven中央仓库不存在时,但是我们自己手上有这些需要的jar包,那么我们可以自给自足,把这个jar包添加到...
这会将你的jar包安装到你的本地Maven仓库中,通常是`~/.m2/repository`目录下的相应路径。 步骤5:在项目中引用 现在,你可以在其他Maven项目中通过以下方式引用这个本地添加的jar包: ```xml <groupId>...
将本地jar包上传到maven仓库,刷新仓库后即可使用
3. **批量导入**:工具会遍历指定的jar包,使用Maven的命令行接口(CLI)或者API来执行`mvn install:install-file`命令,将每个jar包安装到本地库。这个命令会将jar包及其相关的元数据(如pom.xml)添加到本地库。 ...
通过以上步骤,我们可以轻松地将自定义的或第三方的Jar包安装到本地Maven仓库,并在Spring Boot项目中使用它们。这种方式不仅简化了项目的构建流程,还提高了开发效率。希望本文能帮助大家更好地理解和掌握Spring ...
针对这个问题,我们可以利用一个名为“maven批量导入jar包到本地仓库”的工具,它简化了这个过程,使得批量导入成为可能。 这个工具的核心功能是自动化处理JAR包的导入,省去了手动操作的步骤。它的工作原理是通过...
一键删除maven本地仓库中下载错误的jar包资源(以lastUpdated结尾的文档)
为了避免这种情况,开发人员可以预先将常用Jar包放入本地仓库,这样在构建项目时,Maven就能直接使用这些已经存在的依赖,显著提升构建效率。 **压缩包子文件的文件名称列表:repository** "repository"这个文件名...
1) 将脚本解压到任意路径,并将该路径添加到环境变量path中 2) 进入jar文件所在目录,右键该目录空白处选择“在此处打开命令窗口” 3) 输入maven命令,列表出本目录(不对子目录进行处理)所有的jar文件 4) 输入对应...
一键清除maven仓库中下载失败的jar包的实现方法 在Maven项目中,下载失败的jar包是一个常见的问题,它们会占用磁盘空间,影响开发效率和心情。因此,清除这些下载失败的jar包变得非常重要。本文将详细介绍如何使用...
当一个项目运行`mvn install`命令时,Maven会将该项目的编译结果(如JAR文件)安装到本地仓库,使得其他项目可以通过依赖管理直接使用。 描述中提到的“maven的本地仓库jar包”可能是指一个包含各种常用库的压缩...
当我们在项目中引入POM依赖时,Maven会自动从远程仓库下载对应的jar包到本地仓库,以便于项目的构建和运行。然而,有时由于网络问题、仓库服务器故障或者缓存问题,可能会导致jar包下载不完整或者出现错误,从而影响...
手动导jar包到Maven本地仓库!当Maven镜像里没有该jar包时需要自己去网上下载,手动导入到Maven仓库!
下载后,为了在项目中使用这个库,我们需要将jar包添加到本地Maven仓库。这通常通过以下几步完成: 1. 将下载的JxBrowser jar包保存到一个指定的目录,例如`/path/to/downloaded/jars`。 2. 使用Maven的`install:...
在平时的开发中,有一些Jar包因为种种原因,在Maven的中央仓库中没有收录,所以就要使用本地引入的方式加入进来。这种方法可以让我们在没有中央仓库支持的情况下,仍然可以使用需要的Jar包。 拷贝至项目根目录 ...
1、这个工具是我个人开发的,版权归我所有 2、解决了本地仓库里缺少jar包手动导入jar包的麻烦 3、本地需要安装jdk1.7及以上 ...5、直接将maven的jar包的依赖贴到文本框中,点击导入,就可以导入到你本地的maven仓库中
### 手动导入jar包到Maven本地仓库的教程 #### 概述 在Java开发过程中,我们经常需要使用各种第三方库或者自定义组件。这些库或组件通常以jar包的形式提供。Maven作为Java项目中最常用的构建工具之一,能够很好地...