搜档网
当前位置:搜档网 › Maven实践

Maven实践

Maven实践
Maven实践

Maven2实践

2010年11月2日

16:00

一、培训前问题

1、学员简介

2、用便签纸写下培训期望值

3、划分小组,确定小组长

4、培训时间:

上午:9:00‐‐12:00

下午:13:30‐‐16:30

六、Introduction to Maven2

1、Maven2概述

构建项目(Builds)

文档编制(Documentation)

报告(Reporting)

依赖管理(Dependencies)

配置管理(SCMs)

发布管理(Releases)

2、搭建Maven2使用环境

A、解压缩"\software\Maven\apache-maven-2.2.1-bin.zip"解压后的目录:c:\java\maven2.2.1

B、设置环境变量

set M2_HOME=c:\java\maven2.2.1

set PATH=%PATH%;%M2_HOME%\bin

//测试MVN命令是否可用

mvn --version

C、解压缩“\software\Maven\.m2.rar”

解压缩目录:C:\Users\Administrator

D、解压缩\EBook\mvn-examples-1.0.tar.gz

目标目录:C:\java\mavencase

E、测试

//测试能否能运行已配好环境的Maven项目

cd C:\java\mavencase\ch03-simple

mvn install

系统显示以下信息则为配置成功:

[INFO] BUILD SUCCESSFUL

M aven2核心概念:

* 坐标

* 依赖

* 仓库

* 生命周期

* 插件

约定优于配置(Convention Over Configuration)Maven项目能过定义POM文件定义项目的配置信息:

项目对象模型 (Project Object Model)

POM文件中包含的内容:

Maven插件和目标 (Plugins and Goals)

Maven生命周期 (Lifecycle)

Maven坐标 (Coordinates)

Maven仓库(Repositories)

Maven依赖管理 (Dependency Management)

站点生成和报告 (Site Generation and Reporting)

E、Eclipse中安装m2eclipse插件

m2Eclipse插件:

https://www.sodocs.net/doc/324287816.html,/sites/m2e

mylyn插件:https://www.sodocs.net/doc/324287816.html,/mylyn/downloads/

本例中:\SVN\mylyn-3.4.2-e3.4.zip

SVN插件:https://www.sodocs.net/doc/324287816.html,

本例中:\SVN\site-1.6.15.zip

CodePro插件:

Eclipse 3.6 (Helios)

https://www.sodocs.net/doc/324287816.html,/eclipse/inst/codepro/latest/3.6

Eclipse 3.5 (Galileo)

https://www.sodocs.net/doc/324287816.html,/eclipse/inst/codepro/latest/3.5

Eclipse 3.4 (Ganymede)

https://www.sodocs.net/doc/324287816.html,/eclipse/inst/codepro/latest/3.4

安装Nexus

复制\Maven\nexus-webapp-1.8.0.war到Tomcat webapp目录下

在浏览器中执行:http://localhost:8080/nexus-webapp-1.8.0

默认的NEXUS用户名和密码是"admin" 和 "admin123"

D、测试

//测试能否能运行已配好环境的Maven项目

cd C:\java\mavencase\ch03-simple

mvn install

java -cp C:\Users\Administrator\.m2\repository\org\sonatype\mavenbook\ch03\simple\1-SNAPSHOT\simple-1-SNAPSHOT.jar org.sonatype.mavenbook.App

mvn test

mvn site

mvn archetype:create-DgroupId=com.example -DartifactId=my-app

pom.xml文件:项目对象模型 (Project Object Model)

要查看 Exec 插件的完整描述:mvn help:describe -Dplugin=exec -Dfull

浏览你的项目依赖:mvn dependency:resolve

Maven 的调试标记运行:mvn install -X

mvn test -Dmaven.test.failure.ignore=true

mvn install -Dmaven.test.skip=true

使用Maven管理Web Application ‐‐ch05

cd C:\java\mavencase\ch05-simple-web

mvn clean install

cd simple-webapp

mvn jetty:run http://localhost:8080/simple-webapp/simple

在Maven 中多模块项目构建管理

1、每个模块一个pom.xml 文件

2、在总的项目pom.xml 文件中定义以下内容:

simple-weather

simple-webapp

Maven Phases validate : validate the project is correct and all necessary information is available ?compile : compile the source code of the project

?test : test the compiled source code using a suitable unit testing framework. These tests should not require the code be packaged or deployed ?package : take the compiled code and package it in its distributable format, such as a JAR.?integration-test : process and deploy the package if necessary into an environment where integration tests can be run ?verify : run any checks to verify the package is valid and meets quality criteria

?install : install the package into the local repository, for use as a dependency in other projects locally ?deploy : done in an integration or release environment, copies the final package to the

remote repository for sharing with other developers and projects.?Although hardly a comprehensive list, these are the most common default lifecycle phases executed.clean : cleans up artifacts created by prior builds ?site : generates site documentation for this project

?There are two other Maven lifecycles of note beyond the default list above. They are 第三章:

1、新建项目

cd C:\java\mavencase\

md train

cd train

md chap03

cd C:\java\mavencase\train\chap03

mvn archetype:create -DgroupId=org.sonatype.mavenbook.ch03 -DartifactId=simple -DpackageName=org.sonatype.mavenbook

新版本:

mvn archetype:generate -DgroupId=org.sonatype.mavenbook.ch03 -DartifactId=simple -DpackageName=org.sonatype.mavenbook

2、mvn install

3、java -cp target/simple-1.0-SNAPSHOT.jar org.sonatype.mavenbook.ch03.App

groupId,artifactId, packaging, version ——是Maven 的坐标(coordinates)

4、“有效的 (effective)”POM

mvn help:effective-pom

例:

[INFO] Scanning for projects...

[INFO] Searching repository for plugin with prefix: 'help'.

[INFO] ------------------------------------------------------------------------

[INFO] Building simple

[INFO] task-segment: [help:effective-pom] (aggregator-style)

[INFO] ------------------------------------------------------------------------[INFO] [help:effective-pom {execution: default-cli}]

[INFO]

Effective POMs, after inheritance, interpolation, and profiles are applied:

xmlns:xsi="https://www.sodocs.net/doc/324287816.html,/2001/XMLSchema-instance"

xsi:schemaLocation="https://www.sodocs.net/doc/324287816.html,/POM/4.0.0

https://www.sodocs.net/doc/324287816.html,/xsd/maven-4.0.0.xsd">

4.0.0

org.sonatype.mavenbook.ch03

simple

1.0-SNAPSHOT

simple

https://www.sodocs.net/doc/324287816.html,

C:\java\mavencase\book\chap03\simple\src\main

\java

src/main/scripts

C:\java\mavencase\book\chap03\simple\src\test

\java

C:\java\mavencase\book\chap03\simple\target

\classes

C:\java\mavencase\book\chap03\simple\target\test-classes

resource-0

C:\java\mavencase\book\chap03\simple\src\main

\resources

resource-1

C:\java\mavencase\book\chap03\simple\src\test

\resources

C:\java\mavencase\book\chap03\simple\target

simple-1.0-SNAPSHOT

maven-antrun-plugin

1.3

maven-assembly-plugin 2.2-beta-2

maven-clean-plugin

2.2

maven-compiler-plugin 2.0.2

maven-dependency-plugin 2.0

maven-deploy-plugin

2.4

maven-ear-plugin

2.3.1

maven-ejb-plugin

2.1

maven-install-plugin

2.2

maven-jar-plugin

2.2

maven-javadoc-plugin

2.5

maven-plugin-plugin

2.4.3

maven-rar-plugin

2.2

maven-release-plugin

2.0-beta-8

maven-resources-plugin 2.3

maven-site-plugin

2.0-beta-7

maven-source-plugin

2.0.4

maven-surefire-plugin 2.4.3

maven-war-plugin

2.1-alpha-2

maven-help-plugin

2.1.1

false

central

Maven Repository Switchboard

https://www.sodocs.net/doc/324287816.html,/maven2

never

false

central

Maven Plugin Repository

https://www.sodocs.net/doc/324287816.html,/maven2

junit

junit

3.8.1

test

C:\java\mavencase\book\chap03\simple

\target/site

UTF-8

[INFO] ------------------------------------------------------------------------[INFO] BUILD SUCCESSFUL

[INFO] ------------------------------------------------------------------------[INFO] Total time: < 1 second

[INFO] Finished at: Tue Nov 02 15:34:18 CST 2010

[INFO] Final Memory: 5M/15M

[INFO] ------------------------------------------------------------------------

用生命周期阶段(phase)参数来运行Maven:

rchetype插件的create -install

mvn package 等价于

mvn resources:resources compiler:compile resources:testResources compiler:testCompile surefire:test jar:jar

Maven坐标 (Coordinates)

groupId, artifactId, version和packaging。这些组合的标识符拼成了一个项目的坐标groupId:artifactId:packaging:version

在上面的pom.xml中,它的坐标可以表示为mavenbook:my-app:jar:1.0-SNAPSHOT.

这个符号也适用于项目依赖,项目依赖JUnit的3.8.1版本,它包含了一个对

junit:junit:jar:3.8.1的依赖。

groupId

d 团体,公司,小组,组织,项目,或者其它团体。团体标识的约定是,它以创

建这个项目的组织名称的逆向域名(reverse domain name)开头。来自Sonatype

的项目有一个以com.sonatype开头的groupId,而Apache Software的项目有以

org.apache开头的groupId。

artifactId

在groupId下的表示一个单独项目的唯一标识符。

version

一个项目的特定版本。发布的项目有一个固定的版本标识来指向该项目的某一个

特定的版本。而正在开发中的项目可以用一个特殊的标识,这种标识给版本加上

一个“SNAPSHOT”的标记。

packaging

项目的类型,默认是jar,描述了项目打包后的输出。类型为jar的项目产生一个

JAR文件,类型为war的项目产生一个web应用。

Maven仓库的标准是按

照下面的目录格式来存储构件,相对于仓库的根目录:

////-.

在Windows XP上,你的本地仓库很可能

在C:\Documents and Settings\USERNAME\.m2\repository,在Windows Vista上,会是C: \Users\USERNAME\.m2\repository。在Unix系统上,你的本地仓库在~/.m2/repositor

mvn install

Maven依赖管理 (Dependency Management)

在上图中,项目A依赖于项目B和C,项目B依赖于项目D,项目C依赖于项目E,但是项目A

所需要做的只是定义对B和C的依赖。当你的项目依赖于其它的项目,而这些项目又有一

些小的依赖时(向Hibernate, Apache Struts 或者 Spring Framework),传递性依赖使

之变得相当的方便。Maven同时也提供了一种机制,能让你排除一些你不想要的传递性

依赖。

你也可以配置Maven,使用provided范围,让它排除WAR文件中特定的依赖。

站点生成和报告 (Site Generation and Reporting)

另外一个Maven的重要特征是,它能生成文档和报告。

mvn site

定制Maven项目

1、cd c:\java\mavencase\book

md chap04

cd chap04

mvn archetype:create -DgroupId=org.sonatype.mavenbook.ch04 -DartifactId=simple-weather -DpackageName=org.sonatype.mavenbook -Dversion=1.0

maven 编译基于JDK1.5代码时,修改pom.xml文件,增加以下内容:

maven-compiler-plugin

1.5

1.5

UTF-8

增加依赖包信息:

https://www.sodocs.net/doc/324287816.html,mons

commons-io

1.3.2

增加Plugin配置:

org.apache.maven.plugins

maven-jar-plugin

org.sonatype.mavenbook.weather.Main

true

org.apache.maven.plugins

maven-surefire-plugin

true

maven-assembly-plugin

jar-with-dependencies

cd C:\java\mavencase\book\chap04\simple-weather

mvn install

mvn exec:java -Dexec.mainClass=org.sonatype.mavenbook.weather.Main

Maven Exec 插件

Exec 插件的完整描述:mvn help:describe -Dplugin=exec -Dfull

更健壮的解决方案,使用Maven Assembly 插件

浏览你的项目依赖

mvn dependency:resolve

项目的整个依赖树

mvn dependency:tree

[INFO] Scanning for projects...

[INFO] Searching repository for plugin with prefix: 'dependency'.

[INFO] ------------------------------------------------------------------------[INFO] Building simple-weather

[INFO] task-segment: [dependency:tree]

[INFO] ------------------------------------------------------------------------[INFO] [dependency:tree {execution: default-cli}]

[INFO] org.sonatype.mavenbook.ch04:simple-weather:jar:1.0

[INFO] +-log4j:log4j:jar:1.2.14:compile

[INFO] +-dom4j:dom4j:jar:1.6.1:compile

[INFO] | \-xml-apis:xml-apis:jar:1.0.b2:compile

[INFO] +-jaxen:jaxen:jar:1.1.1:compile

[INFO] | +-jdom:jdom:jar:1.0:compile

[INFO] | +-xerces:xercesImpl:jar:2.6.2:compile

[INFO] | \-xom:xom:jar:1.0:compile

[INFO] | +-xerces:xmlParserAPIs:jar:2.6.2:compile

[INFO] | +-xalan:xalan:jar:2.6.0:compile

[INFO] | \-com.ibm.icu:icu4j:jar:2.6.1:compile

[INFO] +-velocity:velocity:jar:1.5:compile

[INFO] | +-commons-collections:commons-collections:jar:3.1:compile

[INFO] | +-commons-lang:commons-lang:jar:2.1:compile

[INFO] | \-oro:oro:jar:2.0.8:compile

[INFO] +-junit:junit:jar:3.8.1:test

[INFO] \https://www.sodocs.net/doc/324287816.html,mons:commons-io:jar:1.3.2:compile

[INFO] ------------------------------------------------------------------------[INFO] BUILD SUCCESSFUL

[INFO] ------------------------------------------------------------------------[INFO] Total time: 2 seconds

[INFO] Finished at: Tue Nov 02 17:21:10 CST 2010

[INFO] Final Memory: 10M/26M

[INFO] ------------------------------------------------------------------------

查看完整的依赖踪迹,包含那些因为冲突或者其它原因而被拒绝引入的构件,打开 Maven 的调试标记运行:

mvn install -X

执行单元测试

mvn test

忽略测试失败

修改pom.xml文件

org.apache.maven.plugins

maven-surefire-plugin

true

mvn test -Dmaven.test.failure.ignore=true

跳过单元测试

方法一:

mvn install -Dmaven.test.skip=true

方法一:修改pom.xml文件内容

org.apache.maven.plugins

maven-surefire-plugin

true

构建一个打包好的命令行应用程序

修改pom.xml文件内容:

maven-assembly-plugin

jar-with-dependencies

mvn install assembly:assembly

m d target

cd target

java -cp target\simple-weather-1.0-jar-with-dependencies.jar

org.sonatype.mavenbook.weather.Main

创建web 应用程序

m d chap05

c d chap05

mvn archetype:create-DgroupId=org.sonatype.mavenbook.simpleweb -DartifactId=simple-webapp

-Dpackage=org.sonatype.mavenbook -Dversion=1.0-SNAPSHOT

配置 Jetty 插件

修改pom.xml文件

simple-webapp

org.mortbay.jetty

maven-jetty-plugin

mvn compile

mvn clean install

运行web 应用程序

cd C:\java\mavencase\ch05-simple-web\simple-webapp

mvn jetty:run

http://localhost:8080/simple-webapp/

多模块应用程序pom.xml

simple-weather

simple-webapp

安装maven步骤

maven3 安装: 安装Maven 之前要求先确定你的JDK 已经安装配置完成。Maven是Apache 下的一个项目,目前最新版本是3.0.4,我用的也是这个。 首先去官网下载Maven:https://www.sodocs.net/doc/324287816.html,/dyn/closer.cgi/maven/binaries/apache-maven-3.0.4-bin.tar.gz 下载完成之后将其解压,我将解压后的文件夹重命名成maven,并将它放在D:\Server 目录下,即maven 最终的路径是:D:\Server\maven 配置maven 环境变量: 系统变量:MAVEN_HOME = D:\Server\maven 用户变量:path = %MAVEN_HOME%\bin 相信大家都有配过环境变量的,详细步骤就不说了,对着把属性名和属性值配上的OK 了。 打开cmd,在里面敲:mvn -version 如果能打印如上信息,说明到此Maven3 已经在你的电脑上安装完成。 mvn 是mavn 的一个指令,mvn -version 是查看版本信息,我的操作系统是32位的WIN7,安装的maven 是3.0.4 如果能打印如上信息,说明到此Maven3 已经在你的电脑上安装完成。 修改maven 仓库存放位置: 找到maven 下的conf 下的settings.xml 配置文件,我的是在D:\Server\maven\conf\settings.xml maven 的仓库默认是放在本地用户的临时文件夹下面的.m2 文件夹下的repository 下,我的是在C:\Users\admcnm\.m2\repository 目录下, 现在我们来修改将它指定到我们自己的路径下,我现在要将仓库指定到D:\Repositories\Maven 目录下,只需要将上面注销的本地仓库打开,

MAVEN使用最佳实践

MA VEN使用最佳实践 闫国玉2009-10-26 本文档介绍一些在使用Maven过程中不是必须的,但十分有用的实践。 目录 1.1设置MA VEN_OPTS环境变量 (2) 1.2配置用户范围SETTINGS.XML (2) 1.3不要使用IDE内嵌的M A VEN (3) 1.4搭建内部仓库管理器 (4) 1.5尽可能的遵循M A VEN的约定 (5) 1.6优先编译被依赖的模块 (5) 1.7利用M A VEN插件创建项目 (5)

1.1设置MAVEN_OPTS环境变量 当Maven项目很大,或者你运行诸如mvn site 这样的命令的时候,maven运行需要很大的内存,在默认配置下,就可能遇到java的堆溢出。解决的方法是调整java的堆大小的值。 Windows环境中 找到文件%M2_HOME%\bin\mvn.bat ,这就是启动Maven的脚本文件,在该文件中你能看到有一行注释为: @REM set MA VEN_OPTS=-Xdebug -Xnoagent https://www.sodocs.net/doc/324287816.html,piler=NONE... 它的意思是你可以设置一些Maven参数,我们就在注释下面加入一行: set MA VEN_OPTS= -Xms128m -Xmx512m 之后,当你运行Maven命令如mvn -version 的时候,你会看到如下的输出: E:\test>mvn -version E:\test>set MA VEN_OPTS= -Xms128m -Xmx512m Maven version: 2.0.9 Java version: 1.6.0_07 OS name: "windows 2003" version: "5.2" arch: "x86" Family: "windows" 我们看到,配置的Maven选项生效了,OutOfMemoryError也能得以相应的解决。 Linux环境中 也可以通过设置环境变量解决该问题,如,编辑文件/etc/profile 如下 MA VEN_OPTS=-Xmx512m export JA VA_HOME MA VEN_HOME MA VEN_OPTS JA V A_BIN PATH CLASSPATH 如果你使用Hudson 用Hudson + Maven做持续集成,并不幸也遇到了类似的错误,那么上述两种方式都将不再起作用了,因为Hudson使用自己的maven-agent来启动Maven,不会去调用Maven的脚本,自然相应的配置也就无效了。 好在Hudson也给为我们提供了配置点,在Hudson的项目配置页面中,有一块Build区域,这里我们已经设置了Root Pom和Goals。注意该区域的右下角有一个"Advanced..."按钮,点击会看到MA VEN_OPTS输入框,这里输入"-Xmx512m"就OK了。 m2eclipse中 类似以上的方法都会失效,所幸m2eclipse提供了配置点。步骤如下: 项目上右击-> Run As -> Run Configurations -> Maven Build 上右击-> New 这时会看到一个maven运行配置对话框,这里面其它的配置我不多解释了,为了解决内存溢出的问题,我们可以选择第二个TAB: JRE,然后在VM arguments中输入配置如:-Xms128m -Xmx512m。 1.2配置用户范围settings.xml Maven用户可以选择配置$M2_HOME/conf/settings.xml或者~/.m2/settings.xml。前者是全局范围的,整台机器上的所有用户都会直接收到该配置的影响,而后者是用户范围的,只有当前用户才会收到该配置的影响。 我们推荐使用用户范围的settings.xml,主要是为了避免无意识地影响到系统中其他用户,当然,如果你有切实的需求,需要统一系统中所有用户的settings.xml配置,则当然应该使用全局范围的settings.xml。 除了影响范围这一因素,配置用户范围settings.xml文件还能够方便Maven的升级。直接修改conf目录下的settings.xml会造成Maven升级的不便,每次升级到新版本的Maven,我们就需要赋值settings.xml文件,而如果使用~/.m2目录下的settings.xml,就不会影响到Maven安装文

java软件工程师顶岗实习报告

实习报告 一、实习目的 进一步了解Java开发的相关知识,掌握Java开发的基本技术,丰富Java开发的实战经验。学习SQL的基础知识及正确的运用方法,ssh等企业应用框架和有用的相关技术,提高自己的工作效率。通过实习,培养我们综合运用已学知识Java语言的面向对象编程能力;培养我们动手能力;培养我们良好编程规范、编程方法;以便能较全面地理解、掌握和综合运用所学的知识,提高自身的编程能力;增强自己的团队协作意识,了解软件开发的思考角度和主要流程。为毕业之后能够更快地进入工作状态并且能够更好的工作,打好一定的基础。 二、实习单位 xxxxxxxxx有限公司 三、岗位介绍 Java软件工程师,学习基于Java平台的Web应用和设计知识。主要应用java基础、MySQL数据库、Servlet技术、JSP页面设计、JQuery、ajax、maven、freemarket、hibernate、struts2、spring、xml等技术完成网站与游戏后台的开发 四、实习安排 第一阶段:linux 第二阶段:java基础知识 第三阶段:数据库设计(oracle、mysql) 第四阶段:Servlet & JSP; 第五阶段:xml & jquery & ajax 第六阶段:三大框架 第七阶段:maven项目管理 第八阶段:freemarket模版技术

第九阶段:自学lucene与支付宝等网上支付 五、实习内容 5.1 linux系统介绍 Linux是一种自由和开放源码的类Unix的操作系统,公司所用服务器一般部署在linux系统下,linux系统以开源免费和稳定著称,我们主要认识了linux的文件系统、分区系统、常用命令,主要学习了linux的常用命令 5.2 java基础知识 Java的基础知识对于一个java软件工程师来说就好比是人的灵魂,现在的公司在招聘的时候不在乎你会不会流行的技术,如(Struts、Hibernate、Spring、ibatis等)他看重的是你的基础扎不扎实,对于网易、腾讯等大公司来说更是如此,我们在开发过程中运用了大量的java基础知识,如类、对象、方法、成员变量、静态变量、封装、继承、多态、异常、接口、抽象类、IO流…等等等等,所以一个系统对于java 编程基础的依赖便不言而喻。 5.3 MySQL、Oracle数据库的介绍 MySQL是最流行的开放源码SQL数据库管理系统,它是由MySQL AB公司开发、发布并支持的。MySQL AB是由多名MySQL开发人创办的一家商业公司。它是一家第二代开放源码公司,结合了开放源码价值取向、方法和成功的商业模型。Oracle则是以稳定性著称,在访问量和数据大量交换的服务器中,Oracle占了大臂的江山,在开发中主要用到了数据库的查询语句、数据库的关系、事物等 5.4 Java中的常用设计模式 5.4.1 工厂模式 客户类和工厂类分开。消费者任何时候需要某种产品,只需向工厂请求即可。消费者无须修改就可以接纳新产品。缺点是当产品修改时,工厂类也要做相应的修改。如:如何创建及如何向客户端提供。

Maven源配置教程

Maven安装及基本使用 1、安装maven首先到maven官网下载maven安装包, Maven下载地址, 下载apache-maven-3.3.9-bin.zip文件 > 由于当前系统为windows, 所以下载apache-maven-3.3.9-bin.zip文件; 如果您使用的系统为unix类系统请下载apache-maven-3.3.9-bin.tar.gz文件 > > 注: 由于maven是依赖于jdk的, 所以在安装maven前需要提前准备好jdk环境。jdk的安装方式不是本文的重点, 所以本文不进行展开说明了。 右键解压apache-maven-3.3.9-bin.zip文件到当前目录中即可 >如果您使用的为unix环境, 以CentOS为例, 使用以下命令进行解压 tar -zxvf apache-maven-3.3.9-bin.tar.gz 到此maven已经安装完成。 为了之后使用方便,所以需要将maven添加到环境变量中, 配置方式: 右键 "我的电脑" -> 选择 "属性" -> 选择 "高级系统设置" -> 选择 "高级" 标签页 -> 选择 "环境变量" 在新打开的窗口中的"系统变量"中新建变量名为"MAVEN_HOME", 变量值为 maven解压后的路径, 例如: E:-maven-3.3.9 然后编辑环境变量PATH, 在PATH的环境变量值的尾部添加";%MAVEN_HOME%", 一路确认后即添加成功。注: windows中多个环境变量的值需要用";"分隔 unix系统中环境变量的配置方式, 以CentOS为例: 使用以下方式为当前用户添加maven的环境变量打开~/.bashrc文件并在文件末尾添加以下内容 vim ~/.bashrc MAVEN_HOME=/opt/apache-maven-3.3.9 PATH=$PATH:$MAVEN_HOME/bin export MAVEN_HOME PATH 保存并退出, 并使用下面的命令使新添加的环境变量立即生效

java高级软件工程师面试题

java高级软件工程师面试题 招聘java高级工程师,职位描述如下,有兴趣的加394504340交流,打扰了,谢谢! 职位名称:java高级开发工程师(急) 职位描述:互联网产品的开发和维护。 职位要求:1. 熟悉JAVA、J2EE体系结构,熟练掌握Spring、Struts、Hibernate、ibatis 的开发技术。 2. 熟悉MySql等数据库开发,熟练掌握SQL语句,有较好的数据库设计能力。 3. 熟练掌握HTML、javascript、ajax等web开发技术,熟悉http协议。 4. 熟悉SVN、Maven、Junit等工具。 5. 具有良好的学习能力、沟通能力,乐于承担工作压力。 6. 有大型门户或社区网站开发经验者优先。 职位所在城市:杭州 职位所在行业:高科技 -------------------------========================================================= 1.说一下struts中常用的对象 2.怎样整合apatche和tomcat 3.说一下在linx系统中搭建服务器 4.简述一下sql server 建模 5.请写一个程序,把一个10进制转换成16进制 6.表student 列id name age WA(本科以上,大专,高中,初中以下) 毕业学校ID,学校信息表 问:统计出文化学历本科以上,大专,高中,初中以下,每个年龄各有多少人(一条SQL语句) 7.有两位少年从隧道的一端向另一端行走.当他们走过隧道的五分之二时,发现隧道外面迎来一辆火车.火车很快就要进入隧道.两位少年向来时隧道跑去.两位少年都是每小时10公里.两位在千钧一发跑出了隧道.假设火车速度恒定,并且两位少年都在瞬间达到最大速度,请问火车的速度 8.请写出常用的oracle语句及说明,存储过程的语句及说明 ---------------------------------------------------------------------------------------------------------------------------------

maven2+struts2 使用maven一步步搭建ssi ssh框架

MA VEN2 学习笔记(一步步搭建ssi项目) IDE工具为idea 10.5.1 首先配置maven环境,不配置也行,只要将maven包下载解压缩,然后在idea中设置file-setting maven home directory为你的maven文件夹地址就可以了 1. 用Maven2 搭建struts 2.18项目 IDE工具为idea 10.5.1

先创建项目骨架部分 mvn archetype:create -DgroupId=com.mycompany.app -DartifactId=my-webapp -DarchetypeArtifactId=maven-archetype-webapp 命令说明: archetype groupId 项目的java包结构:com artifactId 项目的名称:certusSimple archetypeArtifactId(项目骨架的类型): * maven-archetype-archetype * maven-archetype-j2ee-simple * maven-archetype-mojo * maven-archetype-portlet * maven-archetype-profiles (currently under development) * maven-archetype-quickstart * maven-archetype-simple (currently under development) * maven-archetype-site * maven-archetype-site-simple, and * maven-archetype-webapp Pom.xml文件

sonar+maven2使用说明(最终版)

一、sonar环境搭建 1、安装JDK-1.5以上版本。 在环境变量中配置JAVA_HOME,并在path里添加%JAVA_HOME%\bin; 2、安装mysql-5.x以上版本。 3、mysql新建数据库并增加权限 CREATE DATABASE sonar CHARACTER SET utf8 COLLATE utf8_general_ci; GRANT all ON sonar.* TO sonar@localhost IDENTIFIED BY ‘sonar’; FLUSH PRIVILEGES ; 4、在sonar官网https://www.sodocs.net/doc/324287816.html,上下载并解压sonar-2.8.zip,不要放在中文目录下。 5、配置sonar-2.8\conf\sonar.properties文件: 1)配置启动的http端口 sonar.web.host: localhost sonar.web.port: 9000 sonar.web.context: / 三句前本来被注释,取消注释 2)注释掉Derby数据库绑定(49、50行) #sonar.jdbc.url:

jdbc:derby://localhost:1527/sonar;create=true #sonar.jdbc.driverClassName: org.apache.derby.jdbc.ClientDriver 3)取消mysql连接的注释 #----- MySQL 5.x/6.x # Comment the embedded database and uncomment the following properties to use MySQL. The validation query is optional. sonar.jdbc.url: jdbc:mysql://localhost:3306/sonar?useUnicode=true&character Encoding=utf8 sonar.jdbc.driverClassName: com.mysql.jdbc.Driver sonar.jdbc.validationQuery: select 1 运行sonar-2.8\bin\windows-x86-32\StartSonar.bat,打开相应的网页:http://localhost:9000测试是否配置成功,这里的页面链接跟前头的http配置有关 第三条,也就是说,把sonar.properties 文件修改成以下内容: # Listen host/port and context path (for example / or /sonar). Default values are localhost:9000/.

推荐-J2EE的门户网站系统——计算机 精品

XXXXXXXXXXX 毕业(设计) 基于J2EE的门户网站系统 The Portal Website System Based on J2EE 系别:XXX 专业名称:XXX 学生姓名:蔡希哲 学号:XXX 指导教师姓名、职称:XXX 完成日期 20XX年4月14日

基于J2EE的门户网站系统 摘要 从史蒂夫·乔布斯在20XX年的1月9号召开iPhone第一代发布会到现在已经过去6年的时间了。在这6年间,我们见证了iPhone系列的诞生和发展,它们共同重新定义了整个移动平台的世界。尽管在飞速发展的世界,IOS现在已经算是个老兵,有些年迈体衰,但这并不代表它有任何落后,或者可以值得我们忽略的地方。相反,经过长达6年时间的不间断的、持续性改善,苹果已然把IOS打造成了这个星球上目前特性最丰富、支持度最高的移动平台。直至iPhone5在20XX年9月的美国旧金山正式问世,又一次受到用户的热烈追捧,将iPhone系列的热卖浪潮推向一个新的巅峰。 考虑到庞大的iPhone5用户群的需求,我决定将iPhone5门户网站系统作为我的,目的是对网友们及时提供iPhone5的权威市场报价、最新新闻、市场行情以及IOS应用,并且使网友们能在网站上就感兴趣的话题进行探讨。iPhone5门户网站担任了关于iPhone5的综合信息服务提供商的角色,从某种程度上大大拉进了iPhone5用户之间的距离。 关键词: iPhone5;J2EE;MySQL;门户。

The Portal Website System Based on J2EE Abstract It has been six years since Steve Jobs convened the first iPhone conference at January 9, 20XX. During these time we have witnessed the birth and development of iPhone Series, which re-define the whole world of mobile platform. In this rapidly developing world, although IOS is old in age, it never fe ll behind or lost our attention. Instead, after six years’ continuing improving, iPhone has already built IOS into the mobile platform with most abundant features and highest support level at present. When iPhone5 was introduced formally at San Francisco in September 20XX, its selling wave reached a new peak in hot pursuit by the users. Considering the huge demand from the iPhone5 user group, I decide to work out an iPhone5 portal system for my graduation design. What I am striving for is to offer the authoritative market quotations, latest news, market condition and IOS application of iPhone5 in time. Furthermore, users can discuss topics of their interest in my website. In a word, iPhone5 portal is capable to greatly shorten the distance between iPhone5 users through playing the role of iPhone5’s integrated information and service provider. Key words:iPhone5;J2EE;MySql;Portal

Java web开发教程部分 (2)

对于我这样一个爱书、爱开源及爱Spring的人来说,每一次读市面上关于Spring的图书,都会让我对Spring有新的认识及体验,因为每一个作者都会用他所认识的方式来告诉我们什么是Spring、怎么用Spring。由所选择的点不同,角度的不540C,因此读多了就知道Spring真正是什么。 2007年,我跟ErikChang、船长、stef等曾经打算合作写一本能“深入Spring 2”的书籍,然而由于工作的原因,却没能坚持到最后,遗憾的同时,也让我深深体会到了写作的艰辛。2008年春节刚过,ErikChang突然告诉我,他已写完了一本关于Spring 2的书籍。给我发了《精通Spring 2.x Java Web开发》的几章,我一口气读完,感到非常欣慰与惊叹。欣慰的是我读到了一本真正“Spring 2”的书,惊叹的是ErikChang在几个月的时间里奇迹般地写出这么多的东西。 不管您是Spring的新手还是老手,我相信你从这本书中一定能读到以前所不了解的Spring,在应用好Spring的同时,了解他的设计原理,了解他里面的设计精华及编码艺术,这将会为您增加不少的财富。 只是能简单地应用Spring,这没意义;反复不断地深入学习Spring的源码,并把收获及心得拿出来与大家分享,这有意义。因此,ErikChang做了一件非常有意义的事。 用心能做好一件事,执着能让我们取得成功。祝愿每一位读者朋友工作顺利,事业成功! EasyJF 创始人 技术总监 蔡世友,

第1章 开始Spring之旅 自从Spring问世以来就引起了J2EE业界的关注,J2EE开发原本就是一个很复杂的领域,很多初级程序员都不敢涉足,Spring改变了这个局面,Spring出现以后迅速使J2EE开发越来越简单,某种程度上促进了软件生产力的发展,Spring已经成为众多程序员都日益青睐的开发框架,本章将带领大家开始学习Spring,主要内容如下。 ●Spring源码的获取 ●源码内容说明 ●第一个Spring实例 1.1 获取并查看Spring 在使用Spring之前首先要获取该框架的jar包,同时Spring是一个开源项目,有兴趣的读者可以查看Spring源码,了解Spring的设计思想及源码的编写,本节带领读者一步步来获取并查看Spring源码,使读者学会独立获取Spring并在Eclipse IDE中查看Spring源码,对Spring有个概念的认识。 1.1.1 获取Spring 首先到官方网站下载Spring, Spring的官方网址是https://www.sodocs.net/doc/324287816.html,/,单击download栏目,进入下载页面,如图1-1所示。

(营销策划)洗衣店策划书

美完美了创业团队 美衣居干洗店有限责任公司 (Maven joy) 美完美了创业团队大学生创业计划竞赛 美衣居干洗店有限责任公司 (Maven joy)

美完美了创业团队 小组成员:梁琪黄颖胡维 张丹陈雨思 小组分工 队长:梁琪 市场调查:梁琪黄颖胡维 产品分析:梁琪黄颖 市场开发:张丹陈雨思 产品开发:梁琪陈雨思 产品销售:梁琪黄颖胡维 张丹陈雨思 财务管理:张丹胡维 定期总结:梁琪 前言 进步了的社会同意接受有才人士,发展了的社会赞同发掘新一代的

活力。改革开放以后,经济与社会的共同发展引领着中国进入更别致的一代,伴随着时代步伐的加快,人们生活水平的不断提高,不少市民的收入日益增加,衣服的档次、样式等也越发的高档、新颖。因此,洗衣业也开始有节奏的应运而生,巨大的市场空间也令我们不在驻足观望,决定打入这一行业,开拓更广博的市场空间。 开门见山来谈,开干洗店的优势大家有目共睹。具有庞大的市场;收付均为现金收付,无应收账款和呆账的困扰;产业变化小,风险低;管理方便,经营简单;没有产品积压及库存成本的危险,并且容易连锁经营化,方便在以后的发展里占据更多的市场空间。也就是说可以换句话而言,当所有的人都知道了这个行业的好时,会有更多的人选择投资,这便是俗称的“从众心理”。据百度“2011年新起公司排行榜里”统计,干洗店荣登前100名,也就是说,干洗业正以一种惊人的速度大步向前。这时便有人就会问,现在都已经有那么多的干洗店了,为什么我们还有选择投资这个项目?那么现在,由我们来为你进行详细的解答。 首先,正因为越来越多的干洗店起步经营,导致了市场的制度混论,为了获得更多的客源,商家们开始进行“恶性竞争”,大打“价格战”,其实,如若商家们之间的斗争是以消费者为首而开始的方为佳话,但是,大部分的商家是从本质上违背服务宗旨,一切从自己出发,在表面上将价格降低,但却在服务质量上大打折扣,将顾客要求的“干洗”悄然无息的转化为“被水洗”。其次,由于服务质量的下降,使得顾客所需接受的质量也开始良莠不齐,这使得在顾客在选择干洗店的目标上呈现混论、迷惑状态,他们想将衣物进行干

Maven使用中的常见问题整理

Maven使用常见问题整理 1、更新eclipse的classpath加入新依赖 1、在dependencyManagement里面加入包括版本在内的依赖信息,如: joda-time joda-time 1.6.2 2、在同级的dependencies节点里面加入该依赖,如: joda-time joda-time 3、使用mvn eclipse:clean删除当前的工程配置文件,并用mvn eclipse:eclipse重新生成。 4、导入或刷新该eclipse工程。 2、工程配置未使用pom.xml更新 问题:Project configuration is not up-to-date with pom.xml 导入maven工程后,出现如下错误: Description Resource Path Location Type Project configuration is not up-to-date with pom.xml. Run project configuration update rdc line 1 Maven Configuration Problem 解决办法就是: 右键项目,【Maven】--》【Update Project Configuration...】即可。。。

Quartz2.2基础教程

Quartz2.2基础教程 下载和安装如果是采用maven管理依赖,则依赖配置如下: [html] view plain copy print?<dependency> <groupId>org.quartz-scheduler</groupId> <artifactId>quartz</artifactId> <version>2.2.3</version> </dependency> <dependency> <groupId>org.quartz-scheduler</groupId> <artifactId>quartz-jobs</artifactId> <version>2.2.3</version> </dependency> 如果不是的话,所需依赖包可以到官网下载 https://www.sodocs.net/doc/324287816.html,/downloads/关键接口Scheduler一个scheduler的生命周期是有限的,从通过SchedulerFactory创建开始直到调用它的shutdown()方法。scheduler接口一旦创建,就能添加、移除、和列出job和trigger,并执行另一些与调度相关的操作(例如暂停trigger),然而,在scheduler被start()方法启动前,它不会作用于任何trigger(执行job)。Job一个job就是实现了Job接口的类。如下所示,这个接口只有一个简单的方法:[java] view

JEECG v_3.5.2 开发入门环境搭建文档(Maven版)

1、tomcat 下载 2、jdk 下载 3、mysql 下载 4、eclipse 下载 建议下载Helios系列版本的Eclipse Java EE IDE for Web Developers 5、m2eclipse 与maven 下载 6、下载JEECG maven 本地依赖的类库 下载地址:链接: https://www.sodocs.net/doc/324287816.html,/s/1mgL16vm 密码: 2f6e 7、下载JEECG 源码 备注:开发环境工具在下面的网盘里也有 https://www.sodocs.net/doc/324287816.html,/s/1pJE9DN1密码:i7jd 一、开发前准备 具体安装方法不做详细说明 注意:配置jdk 的环境变量JAVA_HOME /PATH /CLASSPATH 1、安装jdk mysql tomcat eclipse (1)、安装m2eclipse 插件 1>检查是否安装 m2eclipse 2> 没有安装则需要安装m2eclipse 网盘里有m2eclipse 下载离线安装 H elp-->Install New Software--->Add 选择要安装的m2eclipse 安装包进行安装 1>解压maven 包例如到如下路径D:\apache-maven-3.0.4 2>配置maven 环境变量 (2)配置maven 2、eclipse 环境配置 二、开发环境安装配置 JEECG 开发环境配置maven 版本 2015年6月7日 15:33

3>解压maven 本地依赖类库JEECG-repository.rar 例如D:\JEECG-repository 4>配置maven setting .xml (D:\apache-maven-3.0.4\conf 目录下 ) 第一步 第二步 5>eclipse 配置maven 如下图

【精编范文】2.拥有出色的执行力、沟通能力及团队协作能力;-实用word文档 (10页)

本文部分内容来自网络整理,本司不为其真实性负责,如有异议或侵权请及时联系,本司将立即删除! == 本文为word格式,下载后可方便编辑和修改! == 2.拥有出色的执行力、沟通能力及团队协作能力; 篇一:岗位名称:文案策划 岗位名称:文案策划 岗位职责: 1、根据市场推广需要,独立撰写种类新闻稿件,包括新闻稿、专访稿,活动稿,微信创意稿件; 2、为公司项目宣传进行策划,设计和撰写稿件; 3、为公司项目策划方案提供文字创意支持; 4、完成领导分派的其他相关工作。 任职要求: 1、新闻学、传播学、中文、金融类相关专业; 2、能熟练应用办公软件,有良好的文字表达能力,较强的活动策划能力; 3、具备深厚的文字功底,文理思路清晰,文风活跃多变,熟悉各类文体写作,善于撰写具有广告效应的文本文案; 4.熟悉策划方案的撰写技巧,可以熟练使用PPT,PPT方案有充足的表现力,方案思路的演绎能力强; 岗位名称:运营专员 岗位职责: 1. 负责网站运营工作所需数据的收集、整理与分析,推动数据分析系统的构建与完善; 2. 整理编写网站数据分析报告,及时发现和分析其中隐含的变化和问题,为业务发展提供决策支持;

3. 支持产品部门下的运营,产品等各方面的数据分析,处理和研究的工作需求; 4. 微博、微信、SNS、论坛等社交新媒体的口碑营销策划、执行; 5. 市场竞争分析, 竞争对手产品形态、模式、发展趋势以及业内动态分析,对公司发展提出有效建议; 任职要求: 1. 广告、新闻、传媒、金融、中文、市场营销等相关专业 2. 善于撰写推广活动策划文案及需求文档; 3. 诚实正直、责任心强,能承受较大的工作压力;具有良好的沟通能力和团队合作精神; 岗位名称:风控专员 岗位职责: 1. 负责公司融资租赁业务的风险管理并独自负责完成融资租赁业务; 2. 审查项目资料的真实性、合法性、准确性、全面性; 3. 对融资租赁项目进行现场调查,完成评审报告; 4. 对于送审案件提出建议及核可方案; 5. 对风险管理的档案资料进行归类、整理、归档、保存; 6. 具备较强的信息采集能力、数据分析能力、判断决策能力,对项目稽核、风险分析和风险审查、管理有丰富的经验以及成功案例; 7、熟悉银行信贷、融资租赁及金融市场,熟悉企业管理运作; 8. 完成公司领导交办的其它工作; 任职要求: 1. 金融类及相关专业; 2. 熟悉信贷及相关行业业务流程及风险点,熟悉贷前审批及贷后检查工作; 3. 良好的协调、沟通能力和公共关系管理能力;工作严谨细致; 4. 原则性强、工作认真负责;

Maven2 基础教程

Maven2 基础教程(1) - 环境配置 目标 通过本文,您可以 ?了解Maven2 ?将Maven2安装到本地机 ?安装Maven的eclipse插件 ?在 SVN上下载一个项目,并使用Maven2编译、测试、安装、部属等 ?生成eclipse的项目文件,并使用eclipse的IDE编辑 ?在eclipse中使用Maven方式开发 准备 预备知识 本文假设您以掌握如下的知识 ?JDK 的安装及使用 ?eclipse 的安装及使用 ?简单的命令行方式 预备软件 在阅读本文的过程中,会使用下列软件,所有软件都附有下载连接地址 ?JDK : jdk-1_5_0_17-windows-i586-p.exe ?eclipse : eclipse-SDK-3.4.1-win32.zip ?Maven : apache-maven-2.0.10-bin.zip 安装软件 安装JDK JDK的安装,此处省略. JDK安装注意 JDK安装完成后请务必设置 JAVA_HOME 环境变量,否则maven2无法运行

安装eclipse eclipse 安装此处省略 安装Maven2 将刚才下载的包apache-maven-2.0.10-bin.zip解压到D:\maven2下,会出现如下目录结构 D:\maven2 +--bin +--boot +--conf +--bin 设置环境变量,在系统环境变量PATH中加入D:\maven2\bin,并且设置环境变量M2_HOME=d:\maven2开启命令行方式,输入 Microsoft Windows XP [版本 5.1.2600] (C) 版权所有 1985-2001 Microsoft Corp. e:\Velcros\velcro7.prototype>*mvn* [INFO] Scanning for projects... [INFO] ------------------------------------------------------------------------ [ERROR] BUILD FAILURE [INFO] ------------------------------------------------------------------------ [INFO] You must specify at least one goal. Try 'mvn install' to build or 'mvn --help' for options See https://www.sodocs.net/doc/324287816.html, for more information. [INFO] ------------------------------------------------------------------------ [INFO] For more information, run Maven with the -e switch [INFO] ------------------------------------------------------------------------ [INFO] Total time: < 1 second [INFO] Finished at: Tue Mar 24 09:45:26 CST 2009 [INFO] Final Memory: 1M/2M [INFO] ------------------------------------------------------------------------ 配置Maven2使用公司内部插件仓库服务器 由于Maven2的安装包并不包括插件,所以在使用时会自动到网络上下载需要使用的插件以及依赖包等。将Maven配置为使用内部插件服务器,可以加快下载速度 Maven2的配置文件放在如下位置 $用户目录/.m2/settings.xml 和 $M2_HOME/conf/settings.xml,查找循序为 先查找 $用户目录/.m2/settings.xml,然后查找 $M2_HOME/conf/settings.xml。

Maven3实战笔记01环境配置与使用入门

Maven3实战笔记01环境配置与使用入门 刘岩 Email: 1.前言 Maven是apache的一个顶级项目,它的出现越来越影响着现在的众多的开源项目,不仅如此,很多公司的很多新项目都采用Maven提倡的方式进行管理。Maven正逐渐侵入我们原先的管理项目的习惯,对于团队的管理,项目的构建,都是一种质的飞跃。当然是我个人的一些项目经验而说的这话。如果原先的团队老大本身的管理非常科学,也有一套其他软件辅助项目的构建、打包、发布等等一系列机制保证。那么Maven可能对其并没有实质性的影响或者是质的飞跃。当然在此也并不是说咱们中国人做出来的项目就管理不善……只是说利用Maven帮助我们构建项目更科学、更有可维护性、更加模块化、模块功能更加职能单一、做出来的项目更加具有可复用性等等好处。当然笔者也是个刚学习Maven的人,我们一起来学习Maven到底为我们带来了什么好处。笔者邮箱已经给出,欢迎与笔者进行学术上的交流。 2.Maven的思想 本来想看完了实战整本,再写总结的,后来觉得还是先写出来吧。哪怕有什么不对的地方再纠正都不晚,就怕到时候看完了一点心得都没有,全忘了就太……所以先将学习的点点滴滴感受写下来,之后结合实例咱们可以反复的推敲。 目前笔者看到的Maven的主要功能是:项目构建;项目构建;项目依赖管理;软件项目持续集成;版本管理;项目的站点描述信息管理; 由此可以看出Maven最主要的体现在了哪2个词?——对了,“项目”和“管理”!加在一起就是项目管理。项目管理是一个很抽象的概念。项目管理既可以指技术上的管理手段,也可以指“以人为本”的非技术因素。诚然,无论是技术还是非技术,项目的成败最大的责任人其实就是项目经理。这里我们抛开人为因素不提,仅就技术上来说,Maven 提供了一种思想让团队更科学的管理、构建项目。用配置文件的方式对项目的描述、名称、版本号、项目依赖等等信息进行描述。使之项目描述结构清晰,任何人接手的成本比较低。在项目构建时,利用Maven的“约定大于配置”的思想,可以比Ant脚本构建项目省去不少配置文件的内容。而且一个项目可能依赖于其他的项目和第三方的组件才能顺利完成,Maven提供了仓库的概念,让这些依赖项放进仓库中,项目想要从仓库中去取,其他项目组也需要,OK,从仓库中去取,不必每个人去开源项目的站点去苦苦搜寻了。如此人员的成本、软件维护的成本、沟通的成本、硬件的成本都降下来了。客户笑了、公司老板也笑了、项目经理笑了、团队里面的人员也笑了、Apache社区看到这么多人在用也笑了。给笔者的感觉,现在的开源东西越来越向“敏捷开发”、“极限编程”的方向靠拢。通过Maven辅助管理项目,更能发现项目中哪些模块是重复的轮子。 3.Maven的环境搭建 下面我们来看看Maven的环境搭建。首先从Apache网站下载Maven。下载url是:。笔者 bin就不用说了,就是Maven的一些命令参数,boot里面是Maven自己的类加载器,咱们也不必理会。conf里面有个settings.xml就是本机Maven的总配置信息。lib是Maven 运行时需要的类库。将bin目录和JDK的bin目录一样设置为系统的PATH。这样在命令

相关主题