如何在teamcity上查看maven路径的安装路径

1532人阅读
软件开发测试
介绍下使用背景:TeamCity是持续开发的一款软件工具,本文介绍使用TeamCity来实现对Keil MDK工程的自动编译,触发条件为git有新的推送。
TeamCity对于Keil工程并没有官方的直接支持,但是好在能够使用Command Line命令行工具,Keil下则有UV4这个工具且支持命令行,UV4的官方网站:/support/man/docs/uv4/uv4_commandline.htm
下面开始介绍TeamCity的使用步骤:
Step 1: 从官网下载TeamCity并安装,注册Admin用户并登陆,登陆后新建Project。在VCS版本控制一栏中,选择git,因为我这边的Keil工程使用git来进行版本控制的,并选择好git工程路径。
Step 2:新建Build Step ,Runner type一项选择Command Line,Working directory一项选择UV4的文件路径,一般为:C:\Keil_v5\UV4\ ,Run一项选择Custom script,最后在Custom script一项,为可执行的Command
Line代码,参考上面Keil官网给出的例程书写,这边为:
C:\Keil_v5\UV4\UV4.exe -r -j0 D:\MDK-ARM\Teamcity_test.uvprojx -o output.txt &执行后,将会在工程目录下生成一个output.txt的编译报告。
Step 3:工程设置中有Triggers选项,可以点击Add new trigger来添加触发条件,这边设置为VCS Trigger来使能,即git有新的推送时编译工程。
工程设置中有Failure Conditions,可以通过这个选项设置编译失败条件,进入后,其中
the build process exit code is not zero为可选项,因为UV4编译的话,没有error和warning编译返回值为0,没有error但是有warning的话,编译返回值为1,有error的话编译返回值为2。因为Keil工程有时候不可避免的会有warning,所以我们需要将此项前面的钩去掉。去掉后,我们需要添加新的编译错误判断条件,点击Add failure condition来添加,选择Fail build
on specific text in build log,因为代码有错误的话在build log中将会有code 2的返回值提示,所以在Fail build if its build log中添加code 2就可以。
&&相关文章推荐
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
访问:2526次
排名:千里之外Maven常用命令解析21-2
自定义的格式,方便用户直接解压后 就在命令行使用。...《坐标规划》一文中曾解释过,一个 Maven 项目只...文档贡献者 longzhou_3 贡献于 ...
06-8-4 上午09时21分07秒: Local repository folder...你手头也有架包的话可以采用 maven 的指令进行本地...现在我们分析一下配置文件 pom.xml 的结构,以 ...
app) 在这个命令中,前缀 archetype 是包含 create 命令的一个 maven 的 plugin...可以使用 finalName 来自定义该文件的名称,这里暂且不展开,本书后面会 详细解释...
学习maven的使用,看到一篇很实用的入门教程(菜鸟级入门)_IT/计算机_专业资料。学习maven的使用,看到一篇很实用的入门教程(菜鸟级入门)学习...
4. 依赖关系 maven 对依赖关系的特性进行细致的分析和划分,避免开发过程中的依 赖混乱和相互污染行为 5. 文档和构建结果 maven 的 site 命令支持各种文档信息的...
2.Maven 坐标详解 Maven 坐标为各种构件引入了秩序,...19. 20. 21. 22. 23. 24. 25. 26. 27. ...Maven 命令可以构建多个模块,packaging 为 pom ...
(21)运行项目于 jetty 上:mvn jetty:run (22)编译:mvn compile (23)编译并...六、创建 maven 项目 1. 使用 mvn 命令创建。 (1)创建项目: mvn archetype:...
运行如下命令检查 Maven 的安装情况: C:\Users\...Nexus继而不断的下载这个21MB的 中央索引的时候,会...-- PMD 源代码分析工具,包括潜在的 bug、无用代码...
Maven 常用指令 1.创建简单的 maven 的 web 项目 ...post integration-test 21) verify 22) install 将...(五)坐标详解 1.为什么要定义 Maven 坐标在我们...
比如说 JUnit 代码 测试使用的资源 ${basedir} ${...用下面简单的命令构建: ~$cd helloworld ~$mvn ...(我们马上会解释 maven 库)~/.m2/repository/junit...Maven – Guide to using Multiple Repositories
Guide to using Multiple Repositories
Setting up Multiple Repositories
There are two different ways that you can specify the use of multiple repositories. The first way is to specify in a POM which repositories you want to use:
&repositories&
&repository&
&id&my-repo1&/id&
&name&your custom repo&/name&
&url&http://jarsm2.dyndns.dk&/url&
&/repository&
&repository&
&id&my-repo2&/id&
&name&your custom repo&/name&
&url&http://jarsm2.dyndns.dk&/url&
&/repository&
&/repositories&
&/project&
The repositories element is inherited so you would usually specify the repositories to use for a group of projects by defining a repositories element at the top of your inheritance chain.
NOTE: You will also get the standard set of repositories as defined in the .
The other way you can specify the use of multiple repositories by creating a profile in your ${user.home}/.m2/settings.xml file like the following:
&settings&
&profiles&
&id&myprofile&/id&
&repositories&
&repository&
&id&my-repo2&/id&
&name&your custom repo&/name&
&url&http://jarsm2.dyndns.dk&/url&
&/repository&
&/repositories&
&/profile&
&/profiles&
&activeProfiles&
&activeProfile&myprofile&/activeProfile&
&/activeProfiles&
&/settings&
If you specify repositories in profiles you must remember to activate that particular profile! As you can see above we do this by registering a profile to be active in the activeProfiles element.
You could also activate this profile on the command like by executing the following command:
mvn -Pmyprofile ...
In fact the -P option will take a CSV list of profiles to activate if you wish to activate multiple profiles simultaneously.
Note: The settings descriptor documentation can be found on the .
Copyright &2002&#x
All rights reserved.持续集成:TeamCity 的安装和使用 - 简书
持续集成:TeamCity 的安装和使用
让大家了解持续集成(CI),以及入门了解 JetBrains 家的 TeamCity 的一些简单实用。
TeamCity 的一些复杂使用我暂时也不会,一样也是要看文档的,所以不管怎样你都要养成看官网文档的习惯。
TeamCity 和 Jenkins、Hudson 其实是非常一样的,基本流程都是差不多的,所以如果你会其他的几个 CI 工具的话,学习起来很快。
Docker 已经开始在引入到 CI、CD(持续交付)过程中,可以大大简化整体的过程,也许这是未来的一个方向,有兴趣的可以了解更多。
官网定义(就一句话):Powerful Continuous Integration out of the box
官网首页:
官网特性总结:
百度百科:
官网文档:
支持的平台、环境如下图(看不懂也没关系,只要知道它最友好的是 Java 开发即可):
对上图的具体讲解可以看(很重要):
为什么会出现
TeamCity 的出现需要了解这个概念:持续集成(Continuous Integration)
百科定义:
网络文章:
哪些人喜欢它
哪些人不喜欢它
Google 不到结果,应该是没人不喜欢,只是有些人用不惯
为什么学习它
更好地保证项目质量
Travis CI:
QuickBuild:
好的网络文章介绍:
TeamCity 入门
先来看一段官网的介绍视频
这个视频其实已经很清楚地说明了一个整理流程是怎样的,我今天只是做一个更加清晰的细节讲解而已
你需要穿越:
TeamCity 安装部署(Linux 环境)
在我讲之前,如果你英文还可以,就到官网这里看下:
安装环境要求:
JDK 1.7 以上,如果你要使用的是 2016 最新的 TeamCity 9.1 的话,JDK 官网推荐的 1.8
安装包下载:
开始安装(eg:TeamCity-9.1.6.tar.gz):
解压压缩包(解压速度有点慢):tar zxf TeamCity-9.1.6.tar.gz
解压完的目录结构讲解:
下载的 tar.gz 的本质是已经里面捆绑了一个 Tomcat,所以如果你会 Tomcat 的话,有些东西你可以自己改的。
按我个人习惯,把解压缩的目录放在 usr 目录下:mv TeamCity/ /usr/program/
进入解压目录:cd /usr/program/TeamCity/
启动程序:/usr/program/TeamCity/bin/runAll.sh start
停止程序:/usr/program/TeamCity/bin/runAll.sh stop
启动需要点时间,最好能给它一两分钟吧
假设我们已经启动了 TeamCity
访问(TeamCity 默认端口是:8111):
如果访问不了,请先关闭防火墙:service iptables stop
你也可以选择把端口加入白名单中:
sudo iptables -I INPUT -p tcp -m tcp --dport 8111 -j ACCEPT
sudo /etc/rc.d/init.d/iptables save
sudo service iptables restart
如果你要改变端口,找到下面这个 8111 位置:vim /usr/program/TeamCity/conf/server.xml
&Connector port="8111" ...
在假设你已经可以访问的情况,我们开始进入 TeamCity 的设置向导:
TeamCity 向导
如上图英文所示,TeamCity 的一些软件安装的配置、服务的配置默认都会放在:/root/.BuildServer
如果你要了解更多 TeamCity Data Directory 目录,你可以看:
TeamCity 向导
如上图英文所示,TeamCity 的一些构建历史、用户信息、构建结果等这类数据是需要放在关系型数据库上的,而默认它给我们内置了一个。
如果你要了解更多 TeamCity External Database,你可以看:
首次使用,官网是建议使用默认的:Internal(HSQLDB),这样我们无需在一开始使用的就考虑数据库迁移或安装的问题,我们只要好好感受 TeamCity 给我们的,等我们决定要使用了,后续再更换数据也是可以的。但是内置的有一个注意点:'TeamCity with the native MSSQL external database driver is not compatible with Oracle Java 6 Update 29, due to a bug in Java itself. You can use earlier or later versions of Oracle Java.'
假设我们就选 Internal(HSQLDB) ,则在创建初始化数据库的过程稍微需要点时间,我这边是几分钟。
TeamCity 向导
如上图所示,接受下协议
TeamCity 向导
如上图所示,我们要创建一个顶级管理员账号,我个人习惯测试的账号是:admin,123456
TeamCity 向导
如上图所示,安装完首次进来地址:
我们可以完善一些管理员信息和基础配置信息,这些配置不配置都无所谓了,只是完善了可以更加好用而已
如果你有 SMTP 的邮箱,你可以来这里开启邮件通知功能:
如果你要开启通知功能那肯定下一步就是考虑通知内容的模板要如何设定:
模板存放路径在:/root/.BuildServer/config/_notifications,用的是 FreeMarker 的语法
项目的构建、管理
建议可以看下官网:
现在让我们开始创建一个项目进行构建
项目管理地址:
假设我现在有一个项目的结构是这样的:
- Youshop-Parent,输出是 pom
- Youshop-manage,输出是 pom
- Youshop-pojo,输出 jar
我们现在以 Youshop-pojo 为例,让它自动构建并发布到 Nexus 中,其他项目道理是一样的,这里就不多说。
TeamCity 向导
如上图,由于目前只要是公司的项目都应该是在版本控制的,所以这里我们选择:Create project from URL
TeamCity 向导
如上图,我们可以看出 TeamCity 也支持 HTTP、SVN、Git 等链接方式。
TeamCity 向导
输入你项目托管商的账号密码,我这里用的是 oschina 的。
TeamCity 向导
账号、密码验证通过,现在可以给这个项目配置一个项目基本信息。
TeamCity 向导
在从版本控制中下载文件和扫描文件
TeamCity 向导
TeamCity 自动扫描到我是用 Maven 构建的项目,所以把 POM 文件找出来了,如果你一个项目有多种构建方式,有对应的配置文件的话,这里都会显示出来的。
我们勾选 Maven 前面的复选框,点击:Use Selected
TeamCity 向导
由于我们的目标是构建完自动发布到 Nexus,所以我们的 Maven Goals 应该是:clean install deploy,这里我们应该点击:Edit,进行编辑。
如果你不懂 Maven Goals,那你需要学习下,这个很重要。
TeamCity 向导
如上图,这台服务器必须装有 Maven、JDK
如上图,Goals 我们的目标是 clean install deploy
如上图,Maven Home 我建议是自己自定义路径,这样肯定不会有问题。所以你服务器上的 Maven 安装路径是什么你就在这里填写上去。Maven 目前支持的最高版本是:3.2.5
下载 Maven 3.2.5:
如上图,Java Parameters 我建议也是自己自定义路径,别选择其他选项。
TeamCity 向导
如上图,点击 run,开始手动构建该项目
TeamCity 向导
如上图,我们看到简略的构建日志
TeamCity 向导
TeamCity 向导
如上 2 张图,我们看到详细的构建内容
TeamCity 向导
如上图,当我们版本控制中有提交的时候,TeamCity 会识别到记录
TeamCity 向导
如上图,我们可以看到提交的 Commit Message 信息。
如上图,右边红圈的三个按钮是用来处理这次提交的,常用的是第一次按钮,点击对此次版本进行构建
TeamCity 向导
如上图,如果你要看所有的提交记录,可以在 Change Log 看到并且指定版本构建
TeamCity 向导
如上图,如果在你不想要这个项目的时候可以进行删除
TeamCity 向导
如上图,因为 Goals 里面有 deploy 命令,所以构建完成会发布到 Nexus 中,这样团队的人就可以用到最新的代码了
TeamCity 向导
如上 gif 图演示,项目常去的几个配置地方就是这样些了
配置自动构建触发行为
官网提供的触发行为有:
下面我们举例说常见的:VCS Trigger、Schedule Trigger
TeamCity 向导
如上图,点击 Add new trigger 添加触发器
TeamCity 向导
如上图,常见的触发器就这些了
TeamCity 向导
如上图,配置好 VCS Trigger 效果是,当我们有代码提交的时候,TeamCity 检查到新版本之后自动构建,这个最常用
TeamCity 向导
如上图,Schedule Trigger 的作用就是定时构建,除了常用的几个输入框设置定时外,TeamCity 还可以使用 Cron 语法进行设置
TeamCity 采用的 Cron 语法是 Quartz,具体你可以看:
如果你不懂 Cron 语法那就算了,但是我想做 Java 这个应该要会的
集成 IntelliJ IDEA
安装 IntelliJ IDEA:
TeamCity 向导
如上图,我们可以直接连上 TeamCity 服务器,这里的用户名密码是 TeamCity 的账号系统。
TeamCity 向导
如上图,连上去的效果是这里会打钩
TeamCity 向导
如上图,我们可以直接把别人提交的内容做 patch 直接用 IntelliJ IDEA 进行整合
还有其他很多结合玩法大家可以自己去尝试下
TeamCity 的插件列表:
使用外部数据库:
使用外部数据库:
迁移到外部数据库:
数据备份:
代码检查功能:
属于我的技术博客:使用Teamcity构建maven项目的图文手册_百度文库
两大类热门资源免费畅读
续费一年阅读会员,立省24元!
使用Teamcity构建maven项目的图文手册
上传于|0|0|文档简介
&&我们最近项目使用的maven管理。那么如何利用teamcity来执行构建、汇总单元测试的覆盖率呢?
teamcity已经很好地集成了maven,所以步骤很简单。特截图记录
阅读已结束,如果下载本文需要使用0下载券
想免费下载更多文档?
定制HR最喜欢的简历
下载文档到电脑,查找使用更方便
还剩18页未读,继续阅读
定制HR最喜欢的简历
你可能喜欢

我要回帖

更多关于 maven默认仓库路径 的文章

 

随机推荐