- 浏览: 831360 次
- 性别:
- 来自: 北京、四川
文章分类
最新评论
-
sunbeamzheng:
总结的很好,好好看看。 拷贝问题确实很需要注意,特别是影不影响 ...
java深拷贝与浅拷贝 -
xmh8023:
...
获取POST数据的值 -
xmh8023:
我访问别的服务器怎么办?急求
获取POST数据的值 -
xmh8023:
String urlString="http://l ...
获取POST数据的值 -
lv12312:
Tomcat 7的老版本么?有bug的,https://iss ...
JMX问题
参考:http://www.sonatype.com/books/maven-book/reference_zh/public-book.html
1.建立一个工程用如下命令就可以:
mvn archetype:create -DgroupId=demo -DartifactId=simple -DpackageName=testpackage -Dversion=1.0
groupId为标识,作为本地命名空间的唯一名称;
artifactId为工程名,执行之后的文件夹名称为simple
packageName为包名,执行之后生成的目录名是C:\maven\simple1\src\main\java\testpackage
version是版本号,默认的是1.0-SNAPSHOT
packaging 打包的类型,默认是jar,war为一个web应用
2.创建web工程
mvn archetype:create -DgroupId=testweb -DartifactId=testweb -DpackageName=cn.canofy.com -DarchetypeArtifactId=maven-archetype-webapp
创建你的 web 应用程序项目,运行 mvn archetype:create ,加上参数 artifactId 和 groupId。 指定 archetypeArtifactId 为 maven-archetype-webapp。
3.mvn install
mvn clean install
这个命令用于编译,打包等执行动作,如果成功会在C:\maven\simple\target目录下生成simple-1.0-SNAPSHOT.jar文件
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<version>1.1.2</version>
</dependency>
<dependency>
<groupId>org.sonatype.mavenbook</groupId>
<artifactId>project-a</artifactId>
<version>1.0</version>
<exclusions>
<exclusion>
<groupId>org.sonatype.mavenbook</groupId>
<artifactId>project-b</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
包依赖,groupId,artifactId,version和上面的意思一样,这里需要依赖的包基本上都已经定义好了,需要什么包可以在网上搜索一下相应的东西就行了~~~
scope则是依赖范围
exclusions 排除一个传递性依赖
compile(编译范围)
compile是默认的范围;如果没有提供一个范围,那该依赖的范围就是编译范围。编译范围依赖在所有的classpath中可用,同时它们也会被打包。
provided(已提供范围)
provided依赖只有在当JDK或者一个容器已提供该依赖之后才使用。例如,如果你开发了一个web应用,你可能在编译classpath中需要可用的Servlet API来编译一个servlet,但是你不会想要在打包好的WAR中包含这个Servlet API;这个Servlet API JAR由你的应用服务器或者servlet容器提供。已提供范围的依赖在编译classpath(不是运行时)可用。它们不是传递性的,也不会被打包。
runtime(运行时范围)
runtime依赖在运行和测试系统的时候需要,但在编译的时候不需要。比如,你可能在编译的时候只需要JDBC API JAR,而只有在运行的时候才需要JDBC驱动实现。
test(测试范围)
test范围依赖 在一般的 编译和运行时都不需要,它们只有在测试编译和测试运行阶段可用。测试范围依赖在之前的???中介绍过。
system(系统范围)
system范围依赖与provided类似,但是你必须显式的提供一个对于本地系统中JAR文件的路径。这么做是为了允许基于本地对象编译,而这些对象是系统类库的一部分。这样的构件应该是一直可用的,Maven也不会在仓库中去寻找它。如果你将一个依赖范围设置成系统范围,你必须同时提供一个systemPath元素。注意该范围是不推荐使用的(你应该一直尽量去从公共或定制的Maven仓库中引用依赖)。
4.mvn test
执行项目的单元测试
5.<project>
[...]
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<testFailureIgnore>true</testFailureIgnore>
</configuration>
</plugin>
</plugins>
</build>
[...]
</project>
忽略测试失败
通常,你会开发一个带有很多失败单元测试的系统。 如果你正在实践测试驱动开发(TDD),你可能会使用测试失败来衡量你离项目完成有多远。 如果你有失败的单元测试,但你仍然希望产生构建输出,你就必须告诉 Maven 让它忽略测试失败。 当 Maven 遇到一个测试失败,它默认的行为是停止当前的构建。 如果你希望继续构建项目,即使 Surefire 插件遇到了失败的单元测试,你就需要设置 Surefire 的 testFailureIgnore 这个配置属性为 true。
也可以通过mven 参数来指定:mvn test -Dmaven.test.failure.ignore=true
6.<project>
[...]
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<skip>true</skip>
</configuration>
</plugin>
</plugins>
</build>
[...]
</project>
你可能想要配置 Maven 使其完全跳过单元测试。 可能你有一个很大的系统,单元测试需要花好多分钟来完成,而你不想在生成最终输出前等单元测试完成。 你可能正工作在一个遗留系统上面,这个系统有一系列的失败的单元测试,你可能仅仅想要生成一个 JAR 而不是去修复所有的单元测试。 Maven 提供了跳过单元测试的能力,只需要使用 Surefire 插件的 skip 参数。 在命令行,只要简单的给任何目标添加 maven.test.skip 属性就能跳过测试:mvn install -Dmaven.test.skip=true
7.
<project>
...
<properties>
<hibernate.annotations.version>3.3.0.ga</hibernate.annotations.version>
</properties>
<dependencyManagement>
...
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-annotations</artifactId>
<version>${hibernate.annotations.version}</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-commons-annotations</artifactId>
<version>${hibernate.annotations.version}</version>
</dependency>
...
</dependencyManagement>
...
</project >
在多模块开发过程中, 针对依赖管理, 最重要的措施就是减少依赖配置的重复, 也就是将相同的依赖都提到parent层上, 而版本的重复可以通过定义property来处理
8.<project>
[...]
<build>
<finalName>simple-webapp</finalName>
<plugins>
<plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>maven-jetty-plugin</artifactId>
</plugin>
</plugins>
</build>
[...]
</project>
配置 Jetty 插件.
在你已经编译,测试并且打包了你的 web 应用之后,你会想要将它部署到一个 servlet 容器中,然后测试一下由 Maven Archetype 插件创建的 index.jsp 。通常情况下,你需要下载 Jetty 或者 Apache Tomcat,解压分发包,复制你的应用程序 WAR 文件至 webapps/ 目录,然后启动你的容器。 现在,实现同样的目的,你不再需要做这些事情。 取而代之的是,你可以使用 Maven Jetty 插件在 Maven 中运行你的 web 应用。为此,你需要在项目的 pom.xml 中配置 Maven Jetty 插件.
最后运行mvn jetty:run命令启动Jetty
9.添加J2EE依赖
<project>
[...]
<dependencies>
[...]
<dependency>
<groupId>org.apache.geronimo.specs</groupId>
<artifactId>geronimo-servlet_2.4_spec</artifactId>
<version>1.1.1</version>
<scope>provided</scope>
</dependency>
</dependencies>
[...]
</project>
添加 Servlet 2.4 规格说明作为依赖
<project>
[...]
<dependencies>
[...]
<dependency>
<groupId>org.apache.geronimo.specs</groupId>
<artifactId>geronimo-jsp_2.0_spec</artifactId>
<version>1.1</version>
<scope>provided</scope>
</dependency>
</dependencies>
[...]
</project>
添加 JSP 2.0 规格说明作为依赖
src/main/java/org/sonatype/mavenbook/web 在这个目录下面写selvlet类
10.多模块企业级项目
子模块
<modules>
<module>simple-command</module>
<module>simple-model</module>
<module>simple-weather</module>
<module>simple-persist</module>
<module>simple-webapp</module>
</modules>
它引用了五个子模块:simple-command,simple-model,simple-weather,simple-persist,和simple-webapp。
<parent>
<groupId>org.sonatype.mavenbook.ch07</groupId>
<artifactId>simple-parent</artifactId>
<version>1.0</version>
</parent>
子模块中的定义
大部分复杂的Maven多模块项目倾向于在顶层POM中定义所有的版本。这个顶层POM就成了影响整个项目的更改焦点。
<project>
...
<properties>
<hibernate.annotations.version>3.3.0.ga</hibernate.annotations.version>
<hsqldb.version>1.8.0.7</hsqldb.version>
</properties>
...
</project>
需要使用Hibernate3插件构造数据库。
mvn hibernate3:hbm2ddl
mvn dependency:analyze
目标分析这个项目,查看是否有直接依赖,或者一些引用了但不是直接声明的依赖。
mvn dependency:tree
dependency:tree目标,该目标会列出项目中所有的直接和传递性依赖。
11.在使用多模块的时候, 父模块的打包类型必须为pom
子模块的pom不需要设置groupId和version, 它直接公用了父模块的groupId和version
当Maven执行一个带有子模块的项目的时候,Maven首先载入父POM,然后定位所有的子模块POM。Maven然后将所有这些项目的POM放入到一个称为Maven 反应堆(Reactor)的东西中,由它负责分析模块之间的依赖关系。这个反应堆处理组件的排序,以确保相互独立的模块能以适当的顺序被编译和安装。
12.POM最佳实践(特别重要的功能,只需在一处声明一组依赖,其它工程则只需调用这个pom就可以了,达到重用的功能)
如果你有一组逻辑上归类在一起的依赖。你可以创建一个打包方式为pom项目来将这些依赖归在一起。
例如,让我们假设你的应用程序使用Hibernate,一种流行的对象关系映射框架。所有使用Hibernate的项目可能同时依赖于Spring Framework和MySQL JDBC驱动。你可以创建一个特殊的POM,它除了声明一组通用依赖之外什么也不做。这样你就不需要在每个使用Hibernate,Spring和MySQL的项目中包含所有这些依赖。你可以创建一个项目叫做persistence-deps(持久化依赖的简称),然后让每个需要持久化的项目依赖于这个提供便利的项目。
在一个单独的POM项目中巩固依赖
<project>
<groupId>org.sonatype.mavenbook</groupId>
<artifactId>persistence-deps</artifactId>
<version>1.0</version>
<packaging>pom</packaging>
<dependencies>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate</artifactId>
<version>${hibernateVersion}</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-annotations</artifactId>
<version>${hibernateAnnotationsVersion}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-hibernate3</artifactId>
<version>${springVersion}</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>${mysqlVersion}</version>
</dependency>
</dependencies>
<properties>
<mysqlVersion>(5.1,)</mysqlVersion>
<springVersion>(2.0.6,)</springVersion>
<hibernateVersion>3.2.5.ga</hibernateVersion>
<hibernateAnnotationsVersion>3.3.0.ga</hibernateAnnotationsVersion>
</properties>
</project>
声明一个对于POM的依赖
<project>
<description>This is a project requiring JDBC</description>
...
<dependencies>
...
<dependency>
<groupId>org.sonatype.mavenbook</groupId>
<artifactId>persistence-deps</artifactId>
<version>1.0</version>
<type>pom</type>
</dependency>
</dependencies>
</project>
13.安装 m2eclipse 插件
a.安装 Subclipse Subclipse 1.2: http://subclipse.tigris.org/update_1.2.x
b.安装 Mylyn Mylyn (Eclipse 3.3): http://download.eclipse.org/tools/mylyn/update/e3.3
Mylyn (Eclipse 3.4): http://download.eclipse.org/tools/mylyn/update/e3.4
c安装 AspectJ Tools Platform (AJDT) AJDT (Eclipse 3.3): http://download.eclipse.org/tools/ajdt/33/update
AJDT (Eclipse 3.4): http://download.eclipse.org/tools/ajdt/34/dev/update
d安装 Web Tools Platform (WTP) WTP: http://download.eclipse.org/webtools/updates/
1.建立一个工程用如下命令就可以:
mvn archetype:create -DgroupId=demo -DartifactId=simple -DpackageName=testpackage -Dversion=1.0
groupId为标识,作为本地命名空间的唯一名称;
artifactId为工程名,执行之后的文件夹名称为simple
packageName为包名,执行之后生成的目录名是C:\maven\simple1\src\main\java\testpackage
version是版本号,默认的是1.0-SNAPSHOT
packaging 打包的类型,默认是jar,war为一个web应用
2.创建web工程
mvn archetype:create -DgroupId=testweb -DartifactId=testweb -DpackageName=cn.canofy.com -DarchetypeArtifactId=maven-archetype-webapp
创建你的 web 应用程序项目,运行 mvn archetype:create ,加上参数 artifactId 和 groupId。 指定 archetypeArtifactId 为 maven-archetype-webapp。
3.mvn install
mvn clean install
这个命令用于编译,打包等执行动作,如果成功会在C:\maven\simple\target目录下生成simple-1.0-SNAPSHOT.jar文件
<dependencies>
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>3.8.1</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<version>1.1.2</version>
</dependency>
<dependency>
<groupId>org.sonatype.mavenbook</groupId>
<artifactId>project-a</artifactId>
<version>1.0</version>
<exclusions>
<exclusion>
<groupId>org.sonatype.mavenbook</groupId>
<artifactId>project-b</artifactId>
</exclusion>
</exclusions>
</dependency>
</dependencies>
包依赖,groupId,artifactId,version和上面的意思一样,这里需要依赖的包基本上都已经定义好了,需要什么包可以在网上搜索一下相应的东西就行了~~~
scope则是依赖范围
exclusions 排除一个传递性依赖
compile(编译范围)
compile是默认的范围;如果没有提供一个范围,那该依赖的范围就是编译范围。编译范围依赖在所有的classpath中可用,同时它们也会被打包。
provided(已提供范围)
provided依赖只有在当JDK或者一个容器已提供该依赖之后才使用。例如,如果你开发了一个web应用,你可能在编译classpath中需要可用的Servlet API来编译一个servlet,但是你不会想要在打包好的WAR中包含这个Servlet API;这个Servlet API JAR由你的应用服务器或者servlet容器提供。已提供范围的依赖在编译classpath(不是运行时)可用。它们不是传递性的,也不会被打包。
runtime(运行时范围)
runtime依赖在运行和测试系统的时候需要,但在编译的时候不需要。比如,你可能在编译的时候只需要JDBC API JAR,而只有在运行的时候才需要JDBC驱动实现。
test(测试范围)
test范围依赖 在一般的 编译和运行时都不需要,它们只有在测试编译和测试运行阶段可用。测试范围依赖在之前的???中介绍过。
system(系统范围)
system范围依赖与provided类似,但是你必须显式的提供一个对于本地系统中JAR文件的路径。这么做是为了允许基于本地对象编译,而这些对象是系统类库的一部分。这样的构件应该是一直可用的,Maven也不会在仓库中去寻找它。如果你将一个依赖范围设置成系统范围,你必须同时提供一个systemPath元素。注意该范围是不推荐使用的(你应该一直尽量去从公共或定制的Maven仓库中引用依赖)。
4.mvn test
执行项目的单元测试
5.<project>
[...]
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<testFailureIgnore>true</testFailureIgnore>
</configuration>
</plugin>
</plugins>
</build>
[...]
</project>
忽略测试失败
通常,你会开发一个带有很多失败单元测试的系统。 如果你正在实践测试驱动开发(TDD),你可能会使用测试失败来衡量你离项目完成有多远。 如果你有失败的单元测试,但你仍然希望产生构建输出,你就必须告诉 Maven 让它忽略测试失败。 当 Maven 遇到一个测试失败,它默认的行为是停止当前的构建。 如果你希望继续构建项目,即使 Surefire 插件遇到了失败的单元测试,你就需要设置 Surefire 的 testFailureIgnore 这个配置属性为 true。
也可以通过mven 参数来指定:mvn test -Dmaven.test.failure.ignore=true
6.<project>
[...]
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-surefire-plugin</artifactId>
<configuration>
<skip>true</skip>
</configuration>
</plugin>
</plugins>
</build>
[...]
</project>
你可能想要配置 Maven 使其完全跳过单元测试。 可能你有一个很大的系统,单元测试需要花好多分钟来完成,而你不想在生成最终输出前等单元测试完成。 你可能正工作在一个遗留系统上面,这个系统有一系列的失败的单元测试,你可能仅仅想要生成一个 JAR 而不是去修复所有的单元测试。 Maven 提供了跳过单元测试的能力,只需要使用 Surefire 插件的 skip 参数。 在命令行,只要简单的给任何目标添加 maven.test.skip 属性就能跳过测试:mvn install -Dmaven.test.skip=true
7.
<project>
...
<properties>
<hibernate.annotations.version>3.3.0.ga</hibernate.annotations.version>
</properties>
<dependencyManagement>
...
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-annotations</artifactId>
<version>${hibernate.annotations.version}</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-commons-annotations</artifactId>
<version>${hibernate.annotations.version}</version>
</dependency>
...
</dependencyManagement>
...
</project >
在多模块开发过程中, 针对依赖管理, 最重要的措施就是减少依赖配置的重复, 也就是将相同的依赖都提到parent层上, 而版本的重复可以通过定义property来处理
8.<project>
[...]
<build>
<finalName>simple-webapp</finalName>
<plugins>
<plugin>
<groupId>org.mortbay.jetty</groupId>
<artifactId>maven-jetty-plugin</artifactId>
</plugin>
</plugins>
</build>
[...]
</project>
配置 Jetty 插件.
在你已经编译,测试并且打包了你的 web 应用之后,你会想要将它部署到一个 servlet 容器中,然后测试一下由 Maven Archetype 插件创建的 index.jsp 。通常情况下,你需要下载 Jetty 或者 Apache Tomcat,解压分发包,复制你的应用程序 WAR 文件至 webapps/ 目录,然后启动你的容器。 现在,实现同样的目的,你不再需要做这些事情。 取而代之的是,你可以使用 Maven Jetty 插件在 Maven 中运行你的 web 应用。为此,你需要在项目的 pom.xml 中配置 Maven Jetty 插件.
最后运行mvn jetty:run命令启动Jetty
9.添加J2EE依赖
<project>
[...]
<dependencies>
[...]
<dependency>
<groupId>org.apache.geronimo.specs</groupId>
<artifactId>geronimo-servlet_2.4_spec</artifactId>
<version>1.1.1</version>
<scope>provided</scope>
</dependency>
</dependencies>
[...]
</project>
添加 Servlet 2.4 规格说明作为依赖
<project>
[...]
<dependencies>
[...]
<dependency>
<groupId>org.apache.geronimo.specs</groupId>
<artifactId>geronimo-jsp_2.0_spec</artifactId>
<version>1.1</version>
<scope>provided</scope>
</dependency>
</dependencies>
[...]
</project>
添加 JSP 2.0 规格说明作为依赖
src/main/java/org/sonatype/mavenbook/web 在这个目录下面写selvlet类
10.多模块企业级项目
子模块
<modules>
<module>simple-command</module>
<module>simple-model</module>
<module>simple-weather</module>
<module>simple-persist</module>
<module>simple-webapp</module>
</modules>
它引用了五个子模块:simple-command,simple-model,simple-weather,simple-persist,和simple-webapp。
<parent>
<groupId>org.sonatype.mavenbook.ch07</groupId>
<artifactId>simple-parent</artifactId>
<version>1.0</version>
</parent>
子模块中的定义
大部分复杂的Maven多模块项目倾向于在顶层POM中定义所有的版本。这个顶层POM就成了影响整个项目的更改焦点。
<project>
...
<properties>
<hibernate.annotations.version>3.3.0.ga</hibernate.annotations.version>
<hsqldb.version>1.8.0.7</hsqldb.version>
</properties>
...
</project>
需要使用Hibernate3插件构造数据库。
mvn hibernate3:hbm2ddl
mvn dependency:analyze
目标分析这个项目,查看是否有直接依赖,或者一些引用了但不是直接声明的依赖。
mvn dependency:tree
dependency:tree目标,该目标会列出项目中所有的直接和传递性依赖。
11.在使用多模块的时候, 父模块的打包类型必须为pom
子模块的pom不需要设置groupId和version, 它直接公用了父模块的groupId和version
当Maven执行一个带有子模块的项目的时候,Maven首先载入父POM,然后定位所有的子模块POM。Maven然后将所有这些项目的POM放入到一个称为Maven 反应堆(Reactor)的东西中,由它负责分析模块之间的依赖关系。这个反应堆处理组件的排序,以确保相互独立的模块能以适当的顺序被编译和安装。
12.POM最佳实践(特别重要的功能,只需在一处声明一组依赖,其它工程则只需调用这个pom就可以了,达到重用的功能)
如果你有一组逻辑上归类在一起的依赖。你可以创建一个打包方式为pom项目来将这些依赖归在一起。
例如,让我们假设你的应用程序使用Hibernate,一种流行的对象关系映射框架。所有使用Hibernate的项目可能同时依赖于Spring Framework和MySQL JDBC驱动。你可以创建一个特殊的POM,它除了声明一组通用依赖之外什么也不做。这样你就不需要在每个使用Hibernate,Spring和MySQL的项目中包含所有这些依赖。你可以创建一个项目叫做persistence-deps(持久化依赖的简称),然后让每个需要持久化的项目依赖于这个提供便利的项目。
在一个单独的POM项目中巩固依赖
<project>
<groupId>org.sonatype.mavenbook</groupId>
<artifactId>persistence-deps</artifactId>
<version>1.0</version>
<packaging>pom</packaging>
<dependencies>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate</artifactId>
<version>${hibernateVersion}</version>
</dependency>
<dependency>
<groupId>org.hibernate</groupId>
<artifactId>hibernate-annotations</artifactId>
<version>${hibernateAnnotationsVersion}</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-hibernate3</artifactId>
<version>${springVersion}</version>
</dependency>
<dependency>
<groupId>mysql</groupId>
<artifactId>mysql-connector-java</artifactId>
<version>${mysqlVersion}</version>
</dependency>
</dependencies>
<properties>
<mysqlVersion>(5.1,)</mysqlVersion>
<springVersion>(2.0.6,)</springVersion>
<hibernateVersion>3.2.5.ga</hibernateVersion>
<hibernateAnnotationsVersion>3.3.0.ga</hibernateAnnotationsVersion>
</properties>
</project>
声明一个对于POM的依赖
<project>
<description>This is a project requiring JDBC</description>
...
<dependencies>
...
<dependency>
<groupId>org.sonatype.mavenbook</groupId>
<artifactId>persistence-deps</artifactId>
<version>1.0</version>
<type>pom</type>
</dependency>
</dependencies>
</project>
13.安装 m2eclipse 插件
a.安装 Subclipse Subclipse 1.2: http://subclipse.tigris.org/update_1.2.x
b.安装 Mylyn Mylyn (Eclipse 3.3): http://download.eclipse.org/tools/mylyn/update/e3.3
Mylyn (Eclipse 3.4): http://download.eclipse.org/tools/mylyn/update/e3.4
c安装 AspectJ Tools Platform (AJDT) AJDT (Eclipse 3.3): http://download.eclipse.org/tools/ajdt/33/update
AJDT (Eclipse 3.4): http://download.eclipse.org/tools/ajdt/34/dev/update
d安装 Web Tools Platform (WTP) WTP: http://download.eclipse.org/webtools/updates/
发表评论
-
Java并发编程:volatile关键字解析
2015-07-30 11:30 642转:http://www.cnblogs.com/dolp ... -
Java内存模型
2015-07-29 13:55 9201. 概述 多任务和 ... -
自定义classloader
2015-07-29 13:54 700转:http://tiantian911.iteye.com ... -
自定义ClassLoader实现java应用核心逻辑模块热部署
2015-07-29 13:51 1026转:http://blog.csdn.net/zhangda ... -
java classloader原理初探
2015-07-29 10:14 674转:http://www.cnblogs.com/ ... -
Java 内存分配全面浅析
2015-07-29 08:52 614转:http://blog.csdn.net/shimi ... -
http stream
2014-07-29 16:38 1152StringBuilder sb = new String ... -
Tomcat远程调试
2011-04-09 12:33 1066需要在Tomcat中的catalina.bat中添加如下的一行 ... -
用jmx监控多台服务器(tomcat)
2010-09-08 18:25 4584因为需要写一个后台监控服务器的程序,涉及到jmx,也涉 ... -
call cmd /c start 一点疑问
2010-09-01 10:16 2254call "cmd /c start aaa.bat ... -
Windows计划任务之schtasks
2010-08-30 13:21 3604创建:SCHTASKS /Create /RU SYSTEM ... -
ajax返回值中有中文存在的乱码现象
2010-08-27 16:28 1452ajax返回值中有中文存在的乱码现象,解决就加入下面一行代码即 ... -
MIME TYPE
2010-08-26 16:23 7267最近要做需要在页面上放音频的东西,因此需要用到mime typ ... -
JMX问题
2010-08-20 17:20 5515这个问题貌似是启动tomcat之后就获取不到jmx的链接了,不 ... -
Eclipse控制台乱码
2010-08-05 15:18 4900安装了Eclipse,在运行tomcat时,控制台的中文显示乱 ... -
JMX服务端和客户端的代码
2010-07-27 15:37 3580服务端代码如下 package com.rmi; i ... -
JMX连接Tomcat的JMX测试类
2010-07-27 15:33 3305首先是为了使tomcat支持JMX,必须在tomcat的启动项 ... -
JMX的一个链接类
2010-07-27 09:37 1474package com.pachira.oamp.jmxS ... -
java中文转unicode码
2010-07-22 11:04 43435转载地址:http://www.iteye.com/topic ... -
获取POST数据的值
2010-07-21 14:17 9929当method为POST,Content-Type为 ...
相关推荐
本教程"maven学习.zip"主要关注的是Maven插件的使用,下面将详细介绍Maven插件及其在实际开发中的应用。 **1. Maven插件的概念** Maven插件是Maven生态系统的核心组成部分,它们提供了各种功能,如编译源代码、打包...
** Maven学习资源整理** 在Java开发领域,Maven是一个不可或缺的构建工具,它极大地简化了项目的构建、管理和依赖管理过程。本资源包是为初学者和有经验的开发者准备的一系列Maven学习资料,旨在帮助你更好地理解和...
【 Maven学习极品:初学者的完美指南】 Maven,一个由Apache软件基金会开发的项目管理工具,是Java世界中不可或缺的一部分。它简化了构建过程,通过自动管理项目的依赖关系,使得开发者可以专注于编写代码,而不是...
【Maven学习指南】 Maven是一个强大的项目管理工具,源于Apache组织,专为基于Java平台的项目构建、依赖管理和项目信息管理而设计。它通过一个明确的项目对象模型(POM)来描述项目,利用其内置的项目生命周期和...
**Maven学习笔记** 在Java开发领域,Maven是一个不可或缺的构建工具,它极大地简化了项目的构建、管理和依赖管理过程。Maven通过使用一个项目对象模型(Project Object Model,POM),XML格式的配置文件,定义了...
maven学习笔记maven学习笔记maven学习笔记
### Maven 学习文档知识点详解 #### 一、Maven简介 Maven 是一款非常流行的 Java 项目的构建管理和依赖管理工具。它可以帮助开发者自动化构建过程,简化项目管理和部署流程。通过使用 Maven,开发者可以轻松地管理...
Maven常用命令 Maven Maven学习
### Maven学习文档知识点详解 #### 一、Maven概述与安装目录介绍 Maven是一款流行的自动化构建工具,广泛应用于Java项目的构建过程中。它通过一种项目对象模型(Project Object Model,简称POM)来管理项目的构建...
maven学习文档,包含常见错误和docker的集成,包含多模块开发,不同的profile的开发,和一些插件基础属性说明
**Maven学习书籍** 《Maven实战》是一本专门针对Maven这一强大的Java项目管理和构建工具的书籍。作为国内首部Maven领域的专著,它深入浅出地讲解了Maven的核心概念、工作原理以及实际应用,是Java开发者进阶必备的...
**Maven学习手册** 在软件开发领域,Maven是一个强大的构建工具,主要用于Java项目管理。它简化了构建过程,依赖管理和项目的标准化。本手册旨在帮助开发者深入理解和有效地使用Maven,结合作者的实际项目经验,...
【Maven学习的基础资料】 Maven是一个强大的项目管理和综合工具,主要面向Java开发人员。它通过提供一个标准的项目生命周期框架,大大简化了项目的构建、文档生成、依赖管理、源码分布等任务。Maven的核心理念是...
maven学习资料
本资源“Maven学习必要插件”提供了一套预配置好的Maven环境,以便开发者可以快速投入到Maven的使用中。在本文中,我们将深入探讨Maven的核心功能、常用插件以及如何配置和使用这些插件。 1. **Maven核心功能** ...
通过本教程,读者将逐步学习到如何设置Maven环境、如何编写和理解POM文件、如何利用Maven的生命周期进行项目的构建和管理。以上内容不仅会为初学者提供Maven入门的全面指导,还会通过实际例子帮助开发者深入理解并...
**Maven 学习概要** Maven 是一个强大的项目管理工具,主要用于构建、管理和部署 Java 项目。它通过提供一套标准的项目对象模型(Project Object Model,POM)和生命周期概念,使得开发者能够轻松地处理项目的构建...
该资料主要讲maven的基础用法,安装和使用等。还有maven常常被使用到的一些命令和用法。注意事项等。
里面包含:两本maven电子书(《Maven权威指南中文版》和《Maven实战》)和两个文档(《在maven和jetty环境下eclipse的调试》、《基于Maven的Spring_+_Spring_MVC_+_Mybatis的环境搭建》),内容皆精品。