项目jar包管理,使用 .userlibraries 文件增加jar包的可移植性,明确jar包依赖,多项目共用jar包里
当一个普通的项目,在不适用maven 等jar包管理工具的时候,通常我都会直接把jar 包复制lib下,并且在build path 中直接添加额外jar包,或者使用user_libraries包所用的jar包
都放到一个文件夹里,然后让项目依赖该user_libraries 包。如果我又新建了一个项目,但是只有部分jar 包不一样或者版本不一样,通常我会再次新建一个文件夹把这些jar 放进去,
如果jar包出现问题我要一个个去翻看lib下的文件,看着很不方便,也不方便管理。
有没有像maven 那样一个xml 文件把所有的jar 包都列出来,一目了然的原生方式呢。。
查看eclipse 对于user_libraries的管理
使用export 导出其中一个user_libraries 文件,后缀名是 .userlibraries
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<eclipse-userlibraries version="2">
<library name="jbpm-lib" systemlibrary="false">
<archive path="E:/ruanjian/jbpm-jar/activation.jar"/>
<archive path="E:/ruanjian/jbpm-jar/antlr.jar"/>
<archive path="E:/ruanjian/jbpm-jar/antlr-runtime.jar"/>
<archive path="E:/ruanjian/jbpm-jar/avalon-framework.jar"/>
<archive path="E:/ruanjian/jbpm-jar/bsh.jar"/>
<archive path="E:/ruanjian/jbpm-jar/cglib.jar"/>
<archive path="E:/ruanjian/jbpm-jar/commons-collections.jar"/>
<archive path="E:/ruanjian/jbpm-jar/commons-logging.jar"/>
<archive path="E:/ruanjian/jbpm-jar/core.jar"/>
<archive path="E:/ruanjian/jbpm-jar/dom4j.jar"/>
<archive path="E:/ruanjian/jbpm-jar/drools-api.jar"/>
<archive path="E:/ruanjian/jbpm-jar/drools-compiler.jar"/>
<archive path="E:/ruanjian/jbpm-jar/drools-core.jar"/>
<archive path="E:/ruanjian/jbpm-jar/errai-bus.jar"/>
<archive path="E:/ruanjian/jbpm-jar/errai-common.jar"/>
<archive path="E:/ruanjian/jbpm-jar/freemarker.jar"/>
<archive path="E:/ruanjian/jbpm-jar/gson.jar"/>
<archive path="E:/ruanjian/jbpm-jar/guice.jar"/>
<archive path="E:/ruanjian/jbpm-jar/guice-aopalliance.jar"/>
<archive path="E:/ruanjian/jbpm-jar/guice-servlet.jar"/>
<archive path="E:/ruanjian/jbpm-jar/gwt-console-rpc.jar"/>
<archive path="E:/ruanjian/jbpm-jar/gwt-console-server-integration.jar"/>
<archive path="E:/ruanjian/jbpm-jar/hibernate-core.jar"/>
<archive path="E:/ruanjian/jbpm-jar/hsqldb.jar"/>
</library>
</eclipse-userlibraries>
观察发现就是archive 节点 path 属性指定jar 路径
那么我们是否可以把一些常用的jar 放到一个文件夹中(不用每次项目都去找jar,下载jar,比如strtus需要的jar包汇总,ssh 需要的jar包汇总),然后编写一个上面这样的文件
以后我们新建一个项目直接导入这个文件就可以完成一个项目所有jar包的导入。。。
答案是可以的: 刚才我们使用了export ,在他上面有一个import 即为导入,导入我们写好的 .userlibraries 文件。然后项目添加user_libraries 即可完成jar包的引入。
项目jar包管理,使用 .userlibraries 文件增加jar包的可移植性,明确jar包依赖,多项目共用jar包里的更多相关文章
- ASP.NET Core 静态文件及JS包管理器(npm, Bower)的使用
在 ASP.NET Core 中添加静态文件 虽然ASP.NET主要大都做着后端的事情,但前端的一些静态文件也是很重要的.在ASP.NET Core中要启用静态文件,需要Microsoft.AspNe ...
- NET Core 静态文件及JS包管理器(npm, Bower)的使用
NET Core 静态文件及JS包管理器(npm, Bower)的使用 文章目录 在 ASP.NET Core 中添加静态文件 使用npm管理JavaScript包 使用Bower管理JavaScri ...
- Golang 包管理机制
Golang 包管理机制 1. 历史 在go1.11之前, 并没有官方的包管理机制(Godep算个半官方), 主流的包管理机制有: GoVendor Glide Godep 在go1.11之后, 官方 ...
- Node包管理工具
Node包管理工具 只是简单的介绍一些工具的使用,有利于开发过程.除了介绍Node包管理工具,还介绍了前端打包工具,前端模块管理工具 Node包管理工具: --npm --cnpm ...
- godep 包管理工具
godep是解决包依赖的管理工具 安装 go get github.com/tools/godep 成功安装后,在GOPATH的bin目录下会有一个godep可执行的二进制文件,后面执行的命令都是用这 ...
- 华为云提供针对Nuget包管理器的缓存加速服务
在Visual Studio 2013.2015.2017中,使用的是Nuget包管理器对第三方组件进行管理升级的.而且 Nuget 是我们使用.NET Core的一项基础设施,.NET的软件包管理器 ...
- C# NuGet包管理命令
NuGet Package Manager Console 内置于 Visual Studio 在 Windows 2012 和更高版本. (不包含在 Visual Studio 用于 Mac 或 V ...
- 用Maven快速生成带有依赖的可执行jar包
一.背景 最近项目在做微服务的拆分,那么我们想让我们的容器启动更加的轻量级,所以我们选择放弃tomcat等容器,而是通过maven生成带有指定依赖的可执行jar包的方式进行处理,本文我将分享如何通过m ...
- 前端工程化系列[01]-Bower包管理工具的使用
本文主要介绍前端开发中常用的包管理工具Bower,具体包括Bower的基本情况.安装.使用和常见命令等内容,最后还介绍了依赖树管理的常见方式以及Bower采用的策略并进行了比较. 1.1 关于Bowe ...
随机推荐
- 用CMake设置Visual Studio工程中预处理器定义值
构建VS工程时预处理值是不可缺少的,如动态库的导出配置等.在通过CMake构建VS工程时,可以通过CMake命令进行定义,下面讲三种应用. 字符集:默认装填下VS工程是多字节字符集,如果需要使用Uni ...
- java闭包
闭包就是在一个外部类A中声明了一个内部类B,然后这个内部类可以访问他自己B的作用域和外部类A的作用域.然后现在用另外一个类C创建了一个内部类B,那么这个内部类B可以访问C的作用域. 如果没有闭包,那B ...
- HDOJ(1115)多边形重心
Lifting the Stone http://acm.hdu.edu.cn/showproblem.php?pid=1115 题目描述:输入n个顶点(整数),求它们围成的多边形的重心. 算法:以一 ...
- Node.js 中MongoDB的基本接口操作
Node.js 中MongoDB的基本接口操作 连接数据库 安装mongodb模块 导入mongodb模块 调用connect方法 文档的增删改查操作 插入文档 方法: db.collection(& ...
- asp.net前台代码中引入namespace的方法
<%@ import NameSpace="System.Data.OleDb" %>
- windows下用navicat远程链接虚拟机Linux下MySQL数据库
今天想用navicat远程连接虚拟机中的MySQL数据库,一直连不上,在网上搜索了一下,发现原因是MySQL对远程用户登陆的授权问题.这里说一下我的解决方法.(本人小白) 首先,我用navicat去远 ...
- 关于sizeof 跟strlen 的区别
char *t = "我a"; char t1[MAX_PATH] = "aaaaaa"; char display1[MAX_PATH]; char disp ...
- jquery写插件
http://www.cnblogs.com/ajianbeyourself/p/5815689.html
- 如何在cmd下切换不同版本的Python
(1)分别安装python-2.7.12.amd64.msipython-3.5.2-amd64.exe(python官网下载的)顺序无所谓(为了看着方便,我把安装路径修改统一了)(2)配置环境变量D ...
- 介绍开源的.net通信框架NetworkComms框架之三 传递List
原文网址: http://www.cnblogs.com/csdev Networkcomms 是一款C# 语言编写的TCP/UDP通信框架 作者是英国人 以前是收费的 目前作者已经开源 开源地 ...