Plugin.NET

C# 插件管理器
授权协议 GPL
开发语言 C#
所属分类 程序开发、 其他开发相关
软件类型 开源软件
地区 国产
投 递 者 松亦
操作系统 跨平台
开源组织
适用人群 未知
 软件概览

Plugin.NET

C#插件管理器。

当前版本仅支持接口(interface)依赖,即使用反射技术,根据接口来实现插件的依赖注入。

运行环境

项目使用 .net 4.0 编写,自己随便改改代码就能用到.net2.0和.netcore上。

使用方法

  1. 编写程序的接口类,在入口项目中引用这个接口

  2. 在程序中引用Plugin.NET.dll

  3. 初始化插件管理器

  4. 绑定插件管理器的事件OnPlugin,这个事件提供了丰富的插件加载数据

  5. 调用 Load 方法加载已经存在的所有插件,这个方法可以传入一个过滤器函数

  6. 如果希望插件可以热加载,那么再调用 Watch 方法,以监视插件目录是否有新的插件放进去

  7. 如果要停止热加载,那么就调用 StopWatch 以停止

  • EOS会逐次调用插件的初始化函数 void application::startup() { try { for (auto plugin : initialized_plugins) plugin->startup(); } catch(...) { shutdown(); throw; } 调用插件类的公共基类函数plug

  • 源文件 https://github.com/chcg/NPP_ExportPlugin/releases 也可以通过以下链接下载 https://download.csdn.net/download/simonker/10613932  

  • unplugin是一组适用于Vue 3、Rollup和Webpack等前端项目的插件集合,可以提高开发效率、优化代码性能和增加应用程序的功能。 以下是一些常用的、好用的unplugin插件: unplugin-vue-components:自动注册Vue组件,支持按需导入和全局导入。 unplugin-icons:自动导入SVG图标,支持自定义尺寸和颜色。 unplugin-auto-import

  • public class MyPlugin implements PlugIn {  public MyPlugin() {     }    public void destroy() {   System.out.println("MyPlugin is stoping!!!!!!!!!!!!!!!!!!!!!!!!!!");  }  public void init(ActionServle

  • NotePad++ 安装配置 AnalysePlugin 插件 1. 下载安装 notepad++; 2. 下载 AnalysePlugin;    https://sourceforge.net/projects/analyseplugin/files/binaries/v01.11-R37.zip/download    切换到目录 C:\Program Files (x86)\Notepad

  • 目标: 能将项目中css提取到单独的文件中 能使用配置自动导入打包资源到html中 能使用clean-webpack-plugin清空打包目录 能做css代码和js代码压缩优化 plugin是用于扩展webpack的功能,各种各样的plugin几乎可以让webpack做任何与构建相关关的事情。 plugin的配置很简单,plugins配置项接收一个数组,数组里的每一项都是一个要使用的plugin的

  • This report summarizes newer versions that may be available for your project’s various plugins. # of plugins using the latest version available 26 # of plugins where the next version available is smal

  • 看一个转载的帖子,非常有帮助 链接这里:转载原文 解决方法1 转载:http://www.cnblogs.com/war3blog/p/7864804.html 在编译spark源码的时候老师报类似的错误然后在spark 文件夹下的pom.xml里加入如下依赖,源码编译就没有报错成功编译出来了 修改spark源码下的 pom.xml 文件 <dependency> <groupI

  • ## 插件: 功能:用于增强Vue 1. 本质包含install方法的一个对象,install的第一个参数是Vue,第二个的参数是插件使用者传递的数据 2. 定义插件: 对象.install = function(){ //添加全局过滤器 Vue.filter(....) //添加全局指令 V

  • 解决方法: 在maven库中的settting.xml中的mirrors标签修改一下就好 修改前: <mirrors> <mirror> <id>alimaven</id> <name>aliyun maven</name> <url>http://maven.aliyun.com/nexus/content/groups/public/</url> <mirrorOf>c

  • 方法1. 你搜csdn一搜就能搜到的什么依赖阿什么杂七杂八的问题,这个大家都是互相copy我不多哔哔,如下 <build> <plugins> <!-- Scala Compiler --> <plugin> <groupId>net.alchim31.maven</groupId>

 相关资料
  • 在插件管理,可以查看项目已安装的插件列表,也可以在上方的搜索框中搜索项目已安装的插件,然后更新或卸载它们。 安装插件 点击右上角的“安装插件”按钮后,我们可以浏览所有的插件,这里我们将San CLI插件和San CLI UI插件进行了分类展示,提升搜索效率。 安装 devtools 右上角还提供了安装 devtools 的快捷入口。 注:devtools 是用于调试 san.js 应用的开发工具。

  • 微信文档:https://developers.weixin.qq.com/miniprogram/dev/api-backend/open-api/plugin-management/pluginManager.applyPlugin.html 申请使用插件 $pluginAppId = 'xxxxxxxxx'; $app->plugin->apply($pluginAppId); 删除已添

  • 既然本文主旨在于讲解如何通过插件将 vim 打造成中意的 C/C++ IDE,那么高效管理插件是首要解决的问题。 vim 自身希望通过在 .vim/ 目录中预定义子目录管理所有插件(比如,子目录 doc/ 存放插件帮助文档、plugin/ 存放通用插件脚本),vim 的各插件打包文档中通常也包含上述两个(甚至更多)子目录,用户将插件打包文档中的对应子目录拷贝至 .vim/ 目录即可完成插件的安装。

  • 10.2 插件管理器插件介绍 10.2.1 插件管理的必要性 上一节介绍了 vim 用户目录(~/.vim,并推荐设为 $VIMHOME 环境变量)。这在自 己写简单脚本是很方便的,按规范将不同性质与功能的脚本放在不同子目录。但这有个潜 在的问题,源于你不能总是自己造轮子,且不论是否有能力造复杂的轮子。 这世界上多年以来有许多狂热的 vim 爱好者,开发了许多作秀的插件,应该善加选择然 后下载安装

  • 在本章中,我们将研究Joomla中的Plugin Manager 。 它可以帮助您启用和禁用Joomla插件。 这为现有网站添加了独特的功能。 Joomla插件经理 以下是设置或编辑现有Joomla插件的简单步骤 - Step (1) - 单击Joomla管理员中的Extension → Plugin Manager ,如下所示。 Step (2) - 点击Plugin Manager ,将显示现

  • 默认情况下,插件管理器会为您的插件管理动作做出信息反馈。您可以通过添加 --quiet 和 --silent 选项为 install 和 remove 命令控制反馈信息的级别。使用 --quiet 选项屏蔽除错误信息以外的日志输出。使用 --silent 选项屏蔽所有输出。 默认情况下,插件管理器安装插件不会超时。使用 --timeout 选项并添加一个时间来指定安装超时时间: 设定30秒安装超时

  • 我想在我的NetBeans IDE上安装DukeScript插件,但由于某种原因,它没有显示为可用的插件。我可以在NetBeans插件列表中找到它。它甚至有一个符号来表明它是经过认证的,应该可以在IDE中安装。 尝试的解决方案:我尝试从网站上手动下载,我得到了一个带有一堆jar文件和2.nbm文件的zip。我尝试手动添加。nbm文件到插件管理器,我得到以下错误。 在1.0版中请求javax.web

  • War插件增加了名为providedCompile和providedRuntime的两个依赖配置.这两个配置有相同的作用域在编译或者运行时的配置,不同之处在于是否会将war文件归档.很重要的一点是它们都会提供配置传递.比如在任意的provided配置中添加了commons-httpclient:commons-httpclient:3.0,该依赖依赖于commons-codec,因为这个一个”pr