- 浏览: 798822 次
- 性别:
- 来自: 上海
最新评论
-
心存高远:
谢谢作者分享,刚好看到这里不太明白,现在茅塞顿开。不过runt ...
关于 Maven的传递依赖的理解 -
sxlkk:
851228082 写道甚至在某次技术会议现场遇到《Maven ...
关于 Maven的传递依赖的理解 -
851228082:
851228082 写道a----compile----b-- ...
第五章 坐标和依赖 -
851228082:
a----compile----b-----provided- ...
第五章 坐标和依赖 -
851228082:
甚至在某次技术会议现场遇到《Maven in action》的 ...
关于 Maven的传递依赖的理解
文章列表
You should use setSubject(String subject, String charset) which is a convenient function for this purpose.
Session session=Session.getDefaultInstance(new Properties());
MimeMessage mimeMsg= new MimeMessage(session);
String subject="Herr Müller reist nach \u0141\u00f3d\u017a.";
mimeMsg.s ...
Q:
In my web app, i submit some form fields with JQuery
$.getJSON() Method. I am having some problems with the encoding. The
character-set of my app is charset=ISO-8859-1 but i think this fields
are submitted with UTF-8.
Does anyone know, how can i set encoding in $.getJSON calls?
...
1.
The preferred method for
collaborating with someone is to set up an intermediate repository that you
both have access to, and push to and pull from that. We refer to this
repository as a Git server;It generally takes a
tiny amount of resources to host a Git repo, so you'll rarely need t ...
1.
Branching
means you diverge from the main line of
development and continue to do work without messing with that main line.
2.
When you commit in Git, Git
stores a commit object that contains a pointer to the snapshot of the content
you staged, the author and message me ...
1.
You can get a Git project using
two main approaches. The first takes an existing project or directory and
imports it into Git. The second clones an existing Git repository from another
server.
2.
If you're starting to track an
existing project in Git, you need to ...
1. Version control is a system that records changes to a file or set of files over time so that you can recall specific versions later.
2. Local Version Control Systems have a simple database that kept all the changes to files under revision control while Centralized Version Control Systems h ...
今天终于读完了《Maven in Action》一书,真所谓书非借不读,非常感谢William Chu同学借我此书一阅。前前后后断断续续看了两个月,看得有点慢,主要原因是记了很详细的读书笔记(http://seanzhou.iteye.com/category/192769) ,边看也边进行了实践。总体感觉作者还是花了很大一番功夫来写此书的,内容写得浅显易懂,例子也举得轻巧能说明关键问题。
Maven确实很强大,但稍许有些复杂,特别是项目之间的依赖,包括CI上的集成,要在项目里搭建一个良好的build环境真的比较难,特别是不同模块的POM相互依赖,如何提高重用性,低耦合性都是值得研究的问 ...
1.
Archetype
是
Maven
项目的模板,它能生成项目的基本结构及
POM
文件。
2.
使用
Archetype
的一般步骤:
1) m
vn archetype:generate
2)
选择要使用的
archetype
的编号(候选列表来自
archetype-catalog.xml
)
3)
输入基本参数:
groupId
,
artifactId
,
version
,
package
(想要创建项目的默认
Java
...
1.
编写
Maven
插件的主要步骤
1)
创建一个
maven-plugin
项目:插件本身也是
Maven
项目,但它的
packaging
必须为
maven-plugin
,我们可以用
maven-archetype-plugin
快速创建一个
Maven
插件项目。
2)
为插件编写目标:
Maven
称之为
Mojo
(
Maven Old Java Object
)
3)
为目标提供配置点
4)
编写代码实现目标行为 ...
1.
m2eclipse
(
http://m2eclipse.sonatype.org/
)是
Sonatype
出品的一款在
Eclipse
中集成
Maven
的插件,其主要功能包括:
1
) 创
建和导入
Maven
项目
2)
管理依赖并与
Eclipse
的
classpath
集成
3)
自动下载依赖
4)
自动解析依赖的
sources
与
javadoc
包
5)
使用
Maven Archetype ...
1.
Maven
社区提供了大量插件,能让用户生成各种各样的项目审查报告,包括测试覆盖率、静态代码分析、代码变更等。
Maven Site Plugin
可以让用户生成项目的
Maven
站点,以展示这些报告。
2. 站点
生成的逻辑是
Maven 2
核心的一部分,但鉴于灵活性和可扩展性考虑,
Maven 3
已经从核心中移除这部分逻辑。所以
Maven 2
应该使用最新的
2.x
版本的
maven-site-plugin
,而
Maven 3
应该使用最新的
3.x
版本的
maven-site-plu ...
1.
通过
<properties>
元素用户可以自定义一个或多个属性,然后在
POM
的其他地方使用
${
属性名称
}
的方式引用属性,这种做法的最大意义在于消除重复。
2.
Maven
共有六类属性:
1)
内置属性:
${basedir}
表示项目根目录,即
pom.xml
文件的目录。
${version}
表示项目版本。
2)
POM
属性:用户可以使用该类属性引用
POM
文件中对应元素的值:
a)
${proje ...
1.
版本管理(
Version Management
)是指项目整体版本的演变过程管理,如从
1.0.0-SNAPSHOT
到
1.0.0
。版本控制(
Version Control
)是指借助版本控制工具(
VCS
)追踪代码的每一个变更。
2. 理
想的发布版本应该对应项目某个时刻比较稳定的状态,应满足以下条件:
1)
所有自动化测试应通过
2)
项目没有快照版本的依赖
3)
项目没有配置快照版本的插件
4)
项目包含的代码已全部提交到版本控制系统 ...
1.
Web
项目的
POM
中需要显示地指定打包方式为
war
,其默认的
web
资源目录为
src/main/webapp/
,在该目录下必须包含
WEB-INF/web.xml
。
2.
Maven
属性
${project.groupId}
和
${project.version}
分别代表了当前
POM
的项目的
groupId
和
version
。
3.
javax.servlet.servlet-api
和
javax.servlet.jsp.j ...
1.
持续集成就是快速
且高频率
地自动构建
项目的所有源代码
,并为项目成员提供丰富的反馈
信息。
2.
下图形象地展示了整个持续集成的过程:
3.
一次完整的持续集成包含如下步骤
1)
持续编译
(旧代码应全部删除,重新编译所有最新代码)
2)
持续数据库集成
(清理数据库,重新创建表结构)
3)
持续测试
(单元测试仪
+