Maven添加本地jar的方法

在pox.xml文件中添加 org.apache apache-ant-zip 2.3 system ${basedir}/lib/apache-ant-zip-2.3.jar jsp中获取当前的url <% String path = request.getContextPath(); String bastPath = request.getScheme()+”://”+request.getServerName()+”:”+request.getServerPort()+path+”/”; %> ” id=”base_url”> The username you provided is not allowed to use the text-based Tomcat Manager (error 403) Tomcat管理 http://blog.csdn.net/jay_1989/article/details/52861620

2017年8月26日 · 1 分钟 · 天边的星星

使用Artifactory搭建本地maven仓库

引言 前段日子,公司为了提高产品出产效率,想把公司每个产品各个小功能抽取出来,这样再做一个新产品的时候,重复的功能就可以直接使用之前写好的模块就行了。想法是不错的,但一开始实践起来很麻烦,同事A就将自己的模块做成module,为了图方便,将整个module项目直接发送给同事B和同事C,代码第一次写成以后一般都会有一些小bug的,这样,同事A在自己电脑上修改代码,然后再次修改代码分别传给B和C。B和C需要替换之前的module,重新运行。这相当的麻烦,如果还有同事D,E,F..做起来真是噩梦,可能有有人想问,为什么不用svn或者git,用版本控制工具当然会好非常多,但每次pull其实也比较麻烦。还有另一种方法,使用本地maven仓库,使用过android studio的开发者都应该体会过其中的好处,当需要依赖一个新的模块(或者叫library)时,只需要这样 填写需要的模块及对应的版本号,同步一下就行了,很方便。本篇文章就教各位如何使用Artifactory来搭建本地仓库,来完成上图的效果 什么是Artifactory? 一句话,开源的Maven仓库管理者 搭建Artifactory 1.检测你的jdk版本是否为1.8及以上 打开cmd,输入java -version,如果输出结果如下所示即可,如果是1.6或者1.7,去官网下载最新版本替换 `java -version java version "1.8.0_31" Java(TM) SE Runtime Environment (build 1.8.0_31-b13) Java HotSpot(TM) 64-Bit Server VM (build 25.31-b07, mixed mode)" data-snippet-id="ext.437a4825669d574acb250e72155a8b81" data-snippet-saved="false" data-codota-status="done">C:\Users\Administrator>java -version<br /> java version "1.8.0_31"<br /> Java(TM) SE Runtime Environment (build 1.8.0_31-b13)<br /> Java HotSpot(TM) 64-Bit Server VM (build 25.31-b07, mixed mode)` 2.下载Artifactory,解压下载好的安装包,打开解压后文件夹下的bin文件夹,运行artifactory.bat,大概等待1分钟左右就安装完成了 3.打开http://localhost:8081/artifactory将会看到管理界面,如果看到此界面,就表示artifactory已经安装成功了.如果不是该界面,则需要等待安装完成 上传library到maven 创建自己的library project(注意你的 module是apply plugin: ‘com.android.library’),写好自己模块的代码后,准备上传 1.添加相关插件引用 在你library 项目中顶级的build.gradle文件中,添加一条新的classpath引用 **[plain]** [view plain](http://blog.csdn.net/level_26/article/details/53483444#)<span class="tracking-ad" data-mod="popu_168"> [copy](http://blog.csdn.net/level_26/article/details/53483444#)</span> <div> <embed id="ZeroClipboardMovie_1" src="http://static.blog.csdn.net/scripts/ZeroClipboard/ZeroClipboard.swf" type="application/x-shockwave-flash" width="16" height="16" align="middle" name="ZeroClipboardMovie_1" data-mce-fragment="1"> </embed> </div> </div> - <span style=&#8221;font-family:Microsoft YaHei;font-size:14px;&#8221;>buildscript { - dependencies { - classpath &#8220;org.jfrog.buildinfo:build-info-extractor-gradle:4.4.0&#8221; - } - }</span> 然后在你的library module的build.gradle中,添加两条语句 ...

2017年3月21日 · 3 分钟 · 天边的星星

[Publish AAR To Maven] 使用 Gradle 发布 AAR 到 Maven 仓库

======================================================== 作者:qiujuer 博客:blog.csdn.net/qiujuer 网站:www.qiujuer.net 开源库:github.com/qiujuer/Genius-Android 转载请注明出处:http://blog.csdn.net/qiujuer/article/details/44195131 ——学之开源,用于开源;初学者的心态,与君共勉! ======================================================== 有一个好的库想与世界的伙伴分享,于是共享到GitHub上,于是有人看到了,但是要使用却发现配置非常难。但是发现别人的库只需要一行代码却能使用;于是我想知道为什么能这么简单。 在这篇文章中将带你了解如何发布你的库到远程仓库Maven中,又如何使用。 # <a name="t0"></a>准备 开始之前我们有一定的准备工作,如果准备好了那么后面将会非常顺畅。 - [注册 https://issues.sonatype.org 账户](http://blog.csdn.net/qiujuer/article/details/44195199),并创建你的 Group Id - 学会GPGTools的使用,并生成你的密钥对;见:[使用GPG对文件进行签名加密](http://blog.csdn.net/qiujuer/article/details/44173611) - 编写你的库,并准备好发布,工具:[Android-Studio](http://blog.csdn.net/qiujuer/article/details/41843095) - 添加发布Maven的Gradle文件 - 添加你的个人信息,如你的发布地址、库版本信息等 - 开发发布快照、以及正式版本,审核 # <a name="t1"></a>开始 前面的两项工作由于篇幅较大,单独开篇了,欢迎大家去看~~,我们从第三的地方开始。 ## <a name="t2"></a>编写Lib 编写库,这里我采用的是Android-Studio;至于其使用建立过程以及简单使用大家可见:[环境配置之正式版Android Studio 1.0](http://blog.csdn.net/qiujuer/article/details/41843095) 在这里我使用 [Genius-Android](https://github.com/qiujuer/Genius-Android) 开源库进行演示。 在本次项目中我们尝试发布 UI 部分,图中圈起来部分为我们需要的文件。 ## <a name="t3"></a>编写发布文件 发布文件就是其中的 **maven_push.gradle** 。由于代码较长就不贴代码了,大家可以去GitHub上查看。 代码已经发布到 BeFoot 开源项目中. 该代码运行在 Gradle 中,作用是按照配置进行打包代码文件,然后签名文件,最后发布你的文件到仓库。 在该代码中可以看见许多的方法与参数,如: ``` def isReleaseBuild() { &lt;span class="hljs-keyword">return&lt;/span> VERSION_NAME.contains(&lt;span class="hljs-string">"SNAPSHOT"&lt;/span>) == &lt;span class="hljs-keyword">false&lt;/span> } ...

2016年3月16日 · 2 分钟 · 天边的星星

如何使用Android Studio把自己的Android library分享到jCenter和Maven Central

原文:How to distribute your own Android library through jCenter and Maven Central from Android Studio 如果你想在Android Studio中引入一个library到你的项目,你只需添加如下的一行代码到模块的build.gradle文件中。 1 <div class="line number2 index1 alt1"> 2 </div> <div class="line number3 index2 alt2"> 3 </div> </td> <td class="code"> <div class="container"> <div class="line number1 index0 alt2"> `dependencies {` </div> <div class="line number2 index1 alt1"> ` ``compile ``'com.inthecheesefactory.thecheeselibrary:fb-like:0.9.3'` </div> <div class="line number3 index2 alt2"> `}` </div> </div> </td> </tr> </table> 就是如此简单的一行代码,你就可以使用这个library了。 ...

2015年11月4日 · 9 分钟 · 天边的星星

Maven安装第三方jar或者so文件

C:\Users\Administrator>mvn install:install-file -DgroupId=com.bspatch -Dartifact Id=libbspatch -Dversion=v3 -Dfile=D:/armeabi/libbspatch.so -Dpackaging=so -Dgene ratePom=true -Dclassifier=armeabi [INFO] Scanning for projects… [INFO] [INFO] ———————————————————————— [INFO] Building Maven Stub Project (No POM) 1 [INFO] ———————————————————————— [INFO] [INFO] — maven-install-plugin:2.3.1:install-file (default-cli) @ standalone-po m — [INFO] Installing D:\armeabi\libbspatch.so to D:\apache-maven-3.0.5\repositories .m\com\bspatch\libbspatch\v3\libbspatch-v3-armeabi.so [INFO] Installing C:\Users\ADMINI~1\AppData\Local\Temp\mvninstall839685187217991 3371.pom to D:\apache-maven-3.0.5\repositories.m\com\bspatch\libbspatch\v3\libb spatch-v3.pom [INFO] ———————————————————————— [INFO] BUILD SUCCESS [INFO] ———————————————————————— [INFO] Total time: 1.349s [INFO] Finished at: Thu Jun 05 14:06:58 CST 2014 [INFO] Final Memory: 2M/15M [INFO] ———————————————————————— ...

2014年6月11日 · 2 分钟 · 天边的星星

eclipse 中安装 maven 插件 ,建立maven工程

** 一、插件安装:** 1、下载maven插件 打开eclipse ,help-install new software add name : m2e url: http://download.eclipse.org/technology/m2e/releases/ (今天是2014-2-26,这个地址是有效的,以后不知道是否有效) name : m2e url: http://rgladwell.github.com/m2e-android/updates (2014-4-16,这个地址是有效的,以后不知道是否有效) 2、下载 maven-bin 下载地址 http://download.csdn.net/download/cyw8998/6963959 3、 下载下来之后,解压,找个路径放进去, 把bin的位置,设在环境变量里 新建环境变量MAVEN_HOME , PATH里配置解压后的bin路径 检查一下 进入cmd,运行mvn -v,如果显示出版本号,说明配置成功了。 4、 为了使得Eclipse中安装的Maven插件,同windows中安装的那个相同,需要让eclipse中的maven重新定位一下 Window -> Preference -> Maven -> Installation -> Add 现在就可以建立maven工程了。 二、建立工程: **方法A: ** 1、打开eclipse,通过工具new project出现如下窗口: 2、选中Maven Project, 点击Next,然后保持默认选项,再点击next,弹出如下窗口 3、在过滤器中输入android,如果你已经有这样的插件,将会显示出来,否则就需要通过Add Archetype按钮进行添加 4、 3-1、因为我之前已经安装了这三个插件,因此输入过滤器后直接就有了,如果系统没有找到android-quickstart插件,则需点击Add Archetype,弹出如下窗口,然后将所需要的插件的groupid,artifactid及版本号输入进去,根据准备工作中提及,分别是: de.akquinet.android.archetypes android-quickstart 1.0.6 如下图所示: 4、点击OK后,系统会去寻找相关的插件,然后选中此插件,再次点击Next,依次填入新工程的groupid, artifactid, package,如下图所示: 方法B: ...

2014年6月6日 · 1 分钟 · 天边的星星

使用Maven构建Android项目

之前一直在做WEB前端项目,前段时间接手第一个Android项目,拿到代码之后,先试着run起来再说,导入eclipse,一堆错误,设置classpath依赖,折腾半天,还是编译错误,于是联系项目接口人,得知他有一个Android库项目没有提交到SVN,晕。。。 对于习惯使用Maven管理Java项目的我来说,自然想到能否用Maven构建Android项目呢?于是开始Google、百度,发现已经有前人做过这样的实践了,不过在使用过程中还是遇到不少问题,后面经过各种努力终于能比较顺地使用了,这篇文章对如何使用Maven构建Android项目作了简要总结。如果你和我一样饱受项目依赖管理的折磨,和我一样讨厌项目打包发布时的繁琐,希望能通过Maven让这一切自动化完成。那么,这篇文章或许对你有用。 1. 环境搭建 - **JDK与Android SDK安装 做Android开发,这里无需多说,但安装完成后需要正确设置JAVA_HOME、CLASSPATH、ANDROID_HOME等环境变量。其中ANDROID_HOME为Android SDK安装的根目录。并将%ANDROID_HOME%\tools和%ANDROID_HOME%\platform-tools值添加到Path变量中。 - **Maven安装 这里无需多说,下载安装Maven并正确设置环境变量即可。 - **IDE支持 - **Eclipse 大多数人都在使用Eclipse开发Android应用,如果你用Eclipse做Android开发,推荐下载eclipse-with-m2e-and-adt,该版本已经安装了ADT、m2e、m2e-android等重要插件,支持在Eclipse中使用Maven进行Android应用开发。当时为了安装这些插件费了好大劲,所以,如果你看到这里,可以直接下载它,不用像我一样去做那些没有意义又浪费时间的事情。 - **IntelliJ IDEA 做Java开发,你不能不知道的神器,完美支持使用Maven构建Android应用,强烈推荐。即使是装了插件的Eclipse对使用Maven构建Android应用仍然支持不好。如果你是Eclipse的信徒,你也可以试试它,如果你能习惯它,你一定会被它的强大所吸引。 - **NetBeans IDE NetBeans也支持Android开发,但没怎么了解,用的人应该也比较少。 2. 项目构建 以下是我的项目中使用的pom文件,因为涉及保密,部分地方做过修改,但整体结构没有改变,可以清楚地说明问题。 <?xml version=“1.0” encoding=“UTF-8”?> xmlns=“http://maven.apache.org/POM/4.0.0” xmlns:xsi=“http://www.w3.org/2001/XMLSchema-instance” xsi:schemaLocation=“http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd”> <span class="sc3"><span class="re1" style="color: #ffcc00;"><modelVersion<span class="re2">></span></span></span>4.0.0<span class="sc3"><span class="re1" style="color: #ffcc00;"></modelVersion<span class="re2">></span></span></span> <groupId>com.ikoding.android</groupId> <artifactId>android-app-quickstart</artifactId> <version>1.0.0</version> ...

2014年6月5日 · 3 分钟 · 天边的星星

Maven Android使用一

Maven的坐标包括:groupId、artifactId、version、packaging、classifier。 groupId:定义当前maven项目隶属的实际项目; artifactId:定义实际项目中的一个maven项目(模块); version:定义当前所处的模板; packaging:定义maven项目的打包方式; 依赖对应的元素Dependencies是dependency的负数形式,非常形象,它可以包含一个或者多个dependency。依赖也有它的一组子元素: groupId、artifactId、version:依赖的基本坐标; type:依赖的类型 scope:依赖的范围,用来控制依赖于编译classpath、测试classpath、运行classpath的关系,有compile、test、provided、runtime、import。 依赖是可传递的,如A->B,B->C,那么A->C。传递性依赖简化了依赖管理,但在带来好处的同时也给项目带来了很多隐性的依赖,也就是我们平时总会遇到的依赖冲突,经常需要排除依赖(exclusions)。 排查依赖最常用到的就是mvn dependency:tree命令,将当前项目的依赖树打出来查看。搜索发生冲突的依赖,排除其中多个依赖只留下唯一一个。 类似java的继承思想,抽取重复的配置,消除重复。Parent元素声明父模块,parent下的子元素groupId、artifactId、version定位父模块坐标。 Maven创建的Lib项目 <?xml version=*“1.0”* encoding=*“UTF-8”*?> xsi:schemaLocation=“http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd&#8221;> 4.0.0 com.meibu MeibuLoginActivity 0.0.1-SNAPSHOT apklib//添加下面的build //plugins 就可以设置打包方式apk和apklib MeibuLoginActivity UTF-8</project.build.sourceEncoding> 2.2.1</platform.version> <android.plugin.version>3.6.0</android.plugin.version> com.google.android android ${platform.version}//代表上面properties中的 可以写成2.2.1等等 provided //依赖apklib关系 其中的version是你lib中的设置的版本例如0.0.1-SNAPSHOT com.meibu MeibuBaseActivity 0.0.1-SNAPSHOT apklib com.jayway.maven.plugins.android.generation2 android-maven-plugin ${android.plugin.version}//表示打包插件的版本号就是上面properties 中的<android.plugin.version>可以直接写里面的数字 true 8 创建Maven项目打包apk 依赖2个lib包,下面这个是配置文件,部分说明参考上面pom文件 <?xml version=*“1.0”* encoding=*“UTF-8”*?> xsi:schemaLocation=“http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd&#8221;> 4.0.0 com.meibu MeibuTest 0.0.1-SNAPSHOT apk UTF-8</project.build.sourceEncoding> 2.2.1</platform.version> <android.plugin.version>3.6.0</android.plugin.version> com.google.android android ${platform.version} provided com.meibu MeibuBaseActivity 0.0.1-SNAPSHOT apklib com.meibu MeibuLoginActivity ...

2014年3月29日 · 1 分钟 · 天边的星星