搭建 idea 插件仓库私服

news2024/11/28 20:49:26

正常情况下,我们开发的 idea 插件会发布到 idea 官方商城中,这样用户就可以在 idea 的 Marketplace 中搜索安装。

但是在企业内部,有可能我们开发了很多内部插件,而不能发布到公共市场中,这种情况下我们就需要搭建一个内部的插件私服,本文讲述如何自己配置一个插件私服。

上传插件包

将 idea 打包后的插件安装包上传到一个可以在线下载的HTTP服务器上,如下地址为我的插件 test-1.0.0-202401301923.zip 包保存到某服务器上之后的Http下载地址:

https://nexus.test.com/repository/raw-hosted/idea-plugin/files/test-1.0.0-202401301923.zip

配置插件仓库的私服

创建 updatePlugins.xml 仓库配置文件,并上次到自己的Http服务器上,使之可以访问。

链接 https://nexus.test.com/repository/raw-public/idea-plugin/updatePlugins.xml 是我上传后的URL,内容如下:

<?xml version="1.0" encoding="UTF-8"?>
<plugins>
  <plugin id="com.shanhy.plugin.test" url="https://nexus.test.com/repository/raw-hosted/idea-plugin/files/test-1.0.0-202401301923.zip" version="1.0.0-202302011841">
    <!--插件兼容版本,从since-build到until-build-->
    <idea-version since-build="171.3780.107"/>
    <name>HelloWorld Plugin</name>
    <vendor url="http://www.test.com">单红宇</vendor>
    <rating>5</rating>
    <description><![CDATA[
  <tag>QuickCode,Quick Code,quick,code,code generate,code tools</tag>
  <h3>中文:</h3>
  <ul>
  <li>基于IntelliJ IDEA开发的代码生成插件,支持自定义任意模板(Java,html,js,xml)。</li>
  <li>只要是与数据库相关的代码都可以通过自定义模板来生成。支持数据库类型与java类型映射关系配置。</li>
  <li>支持同时生成生成多张表的代码。每张表有独立的配置信息。完全的个性化定义,规则由你设置。</li>
  <h3>English:</h3>
  <ul>
    <li>The code generation plug-in based on IntelliJ IDEA is developed to support custom templates (Java, HTML, JS, XML).</li>
    <li>As long as database related code can be generated through custom templates. Support database type and Java type mapping relationship configuration.</li>
    <li>The code that supports generating multiple tables at the same time. Each table has a separate configuration information. Full personalization definition, the rules are set by you.</li>
    <li>The following translation is from AI.</li>
  </ul>
  <p>More <a href="http://www.test.com/idea_plugin_helloworld">Help Info</a>.</p>
]]></description>
   <change-notes><![CDATA[
      <p>1.0.0-RELEASE</p>
      <ul>
        <li>1.支持自定义模板(基于velocity)</li>
        <li>2.支持定制表信息,以及添加扩展属性</li>
        <li>3.支持同时生成多张表与多个模板代码</li>
        <li>4.支持生成与数据库相关的任何代码</li>
        <li>5.基于Database Tool开发,支持多种数据库</li>
        <li>6.全局配置模块,可用于定义宏命令,全局配置信息等</li>
        <li>7.内置多个模板组,并支持自定义新的模板组</li>
        <li>8.支持模板调试预览功能,方便模板开发</li>
      </ul>
      <ul>
        <li>1.Supports custom templates (based on Velocity)</li>
        <li>2.Supports customization of table information, as well as adding extended attributes</li>
        <li>3.Supports generating code for multiple tables and multiple templates simultaneously</li>
        <li>4.Supports the generation of any code related to the database</li>
        <li>5.Developed based on Database Tool, supports a variety of databases</li>
        <li>6.Global configuration module for defining macro commands and global configuration settings</li>
        <li>7.Comes with multiple built-in template groups and supports the creation of new custom template groups</li>
        <li>8.Offers a template debugging and preview feature for easy template development</li>
      </ul>
    ]]></change-notes>
  </plugin>
  <plugin>
  <!--第二个插件配置...-->
  </plugin>
  <plugin>
  <!--第三个插件配置...-->
  </plugin>
  <plugin>
  <!--第N个插件配置...-->
  </plugin>
</plugins>

以后每次发布插件新的版本时,需要对应修改配置中的下载地址和版本号,确保 version 新的版本要比旧版本大。

添加私服并搜索插件

在 idea 插件管理中添加自定义的 repository,这里需要使用到我们上面的配置文件 URL。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

如果你的配置文件 updatePlugins.xml 存在于站点根目录下,那么你的 repository 地址可以只写主站点,例如 https://www.test.com/updatePlugins.xml 可以直接使用 https://www.test.com


(END)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1425339.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

css多行文本擦拭效果

<!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8" /><meta name"viewport" content"widthdevice-width, initial-scale1.0" /><title>多行文本擦拭效果</title><style>* …

black--一键格式化Python代码

black black是一个Python代码格式化程序&#xff0c;使用它可以免于在调整代码格式上花费时间。black被许多大大小小的项目成功使用&#xff0c;包括pytest, tox, Pyramid, Django等。 格式化效果&#xff1a; 可以在线查看格式化效果&#xff1a;https://black.vercel.app/…

ERP系统助力车间生产:班组、设备、工序一网打尽!实现生产全流程可视化!

​随着企业生产规模的扩大和业务复杂性的增加&#xff0c;车间管理在企业运营中的地位日益突出。ERP系统作为企业资源管理的核心平台&#xff0c;为车间管理提供了全面的解决方案。通过合理配置和使用ERP系统的功能模块&#xff0c;企业可以优化生产流程、提高生产效率、确保产…

【SparkML系列3】特征提取器TF-IDF、Word2Vec和CountVectorizer

本节介绍了用于处理特征的算法&#xff0c;大致可以分为以下几组&#xff1a; 提取&#xff08;Extraction&#xff09;&#xff1a;从“原始”数据中提取特征。转换&#xff08;Transformation&#xff09;&#xff1a;缩放、转换或修改特征。选择&#xff08;Selection&…

一文看懂动态住宅代理IP,附常见使用问题解答

动态住宅代理IP在保护在线隐私和个人数据安全方面发挥着重要作用。通过隐藏用户的真实IP地址和地理位置&#xff0c;它为网络用户提供了一个更安全、更私密的网络环境。这对于希望保护自己免受网络监控和个人信息泄露的用户来说&#xff0c;是一项不可或缺的网络工具。 一、动态…

RT-Thread:STM32的PB3,PB4 复用IO配置为GPIO

说明&#xff1a;在使用 STM32F103CBT6 配置了 PB3 为IO&#xff0c;测试时发现读取这个IO的电平时钟是0&#xff0c;即便单管脚上的电平是1&#xff0c;读取的数据任然是0,查规格书后发现PB3,PB4是JTAG复用口&#xff0c;要当普通IO用需要配置。 配置工具&#xff1a;STM32Cu…

React中封装大屏自适应(拉伸)仿照 vue2-scale-box

0、前言 仿照 vue2-scale-box 1、调用示例 <ScreenAutoBox width{1920} height{1080} flat{true}>{/* xxx代码 */}</ScreenAutoBox> 2、组件代码 import { CSSProperties, ReactNode, RefObject, useEffect, useRef, useState } from react//数据大屏自适应函数…

36万的售价,蔚来理想卖得,小米卖不得?

文 | AUTO芯球 作者 | 雷歌 Are you OK&#xff1f;雷军被网友们叫“小雷”&#xff01; 被网友一猜再猜的小米SU7的价格&#xff0c;因为一份保险上牌价格单的曝光被网友吵得热热闹闹&#xff0c;曝出的小米汽车顶配上牌保险价格为36.14万。 20万以下&#xff0c;人们愿称…

Java强训day13(选择题编程题)

选择题 编程题 题目1 import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner sc new Scanner(System.in);String s sc.nextLine();char[] c s.toCharArray();int i 0;int t 0;while (i < c.length) {if (c[i] ! \") {…

【脑电信号处理与特征提取】P7-贾会宾:基于EEG/MEG信号的大尺度脑功能网络分析

基于EEG/MEG信号的大尺度脑功能网络分析 Q: 什么是基于EEG/MEG信号的大尺度脑功能网络分析&#xff1f; A: 基于脑电图&#xff08;EEG&#xff09;或脑磁图&#xff08;MEG&#xff09;信号的大尺度脑功能网络分析是一种研究大脑活动的方法&#xff0c;旨在探索脑区之间的功能…

qt内存自动释放的两种情况

qt内存管理机制 QObject的parent 我们时常能看到QWidget或者其他的控件的构造函数中有一项参数parent&#xff0c;默认值都为NULL&#xff0c;例如&#xff1a; QLineEdit(const QString &contents, QWidget *parent nullptr); QWidget(QWidget *parent nullptr, Qt::…

AI绘画探索人工智能的未来

&#x1f308;个人主页: Aileen_0v0 &#x1f525;热门专栏: 华为鸿蒙系统学习|计算机网络|数据结构与算法 ​&#x1f4ab;个人格言:“没有罗马,那就自己创造罗马~” #mermaid-svg-8fL64RHWVzwpzR6m {font-family:"trebuchet ms",verdana,arial,sans-serif;font-siz…

MBR分区转换为GPT分区

这里有一个ecs-test用于测试MBR转换为GPT 新增一块数据盘 将数据盘以MBR分区格式分区 将整块磁盘以mbr形式分区 格式化&#xff0c;挂载等 上传文件&#xff0c;方便测试(以便后续转换格式类型&#xff0c;防止文件丢失) 取消挂载 将MBR转换为GPT 需先下载gdisk yum instal…

【每日一题】6.LeetCode——轮转数组

&#x1f4da;博客主页&#xff1a;爱敲代码的小杨. ✨专栏&#xff1a;《Java SE语法》|《数据结构与算法》 ❤️感谢大家点赞&#x1f44d;&#x1f3fb;收藏⭐评论✍&#x1f3fb;&#xff0c;您的三连就是我持续更新的动力❤️ &#x1f64f;小杨水平有限&#xff0c;欢…

使用 axios 请求库,设置请求拦截

什么是 axios&#xff1f; 基于promise网络请求库&#xff0c;可以同构&#xff08;同一套代码可以运行在浏览器&#xff09;&#xff0c;在服务端&#xff0c;使用原生node.js的http模块&#xff0c;在客户端&#xff08;浏览器&#xff09;中&#xff0c;使用XMLHttpRequests…

鸿蒙开发教学-图片的引用

Image通过调用接口来创建&#xff0c;接口调用形式如下&#xff1a; Image(src: string | Resource | media.PixelMap)该接口通过图片数据源获取图片&#xff0c;支持本地图片和网络图片的渲染展示。其中&#xff0c;src是图片的数据源。 加载图片资源 Image支持加载存档图&…

开年3D第一爆,“恋与深空”网游周流水破1.5亿!底层技术其实是它!

“恋与深空”3D游戏最近在互联网频繁刷屏&#xff0c;首周流水更是破1.5亿&#xff0c;称得上2024新年第一爆。 图源网络&#xff0c;侵删 近些年2D游戏模式已经给网友带来倦怠&#xff0c;一部分网友开始寄希望于3D版本&#xff0c;但3D版本研发之初&#xff0c;大部分人其实…

LeetCode —— 17. 电话号码的字母组合

&#x1f636;‍&#x1f32b;️&#x1f636;‍&#x1f32b;️&#x1f636;‍&#x1f32b;️&#x1f636;‍&#x1f32b;️Take your time ! &#x1f636;‍&#x1f32b;️&#x1f636;‍&#x1f32b;️&#x1f636;‍&#x1f32b;️&#x1f636;‍&#x1f32b;️…

nodejs+vue+ElementUi电商购物个性化商城推荐系统gqfe

电本电商个性化推荐系统是为了提高用户查阅信息的效率和管理人员管理信息的工作效率&#xff0c;可以快速存储大量数据&#xff0c;还有信息检索功能&#xff0c;这大大的满足了用户和管理员这二者的需求。操作简单易懂&#xff0c;合理分析各个模块的功能&#xff0c;尽可能优…

3 分布式文件系统

3.1 什么是分布式文件系统 要理解分布式文件系统首先了解什么是文件系统。 查阅百度百科&#xff1a; 文件系统是负责管理和存储文件的系统软件&#xff0c;操作系统通过文件系统提供的接口去存取文件&#xff0c;用户通过操作系统访问磁盘上的文件。 下图指示了文件系统所处…