mvn的简单使用_mvn locale-程序员宅基地

技术标签: junit  eclipse插件  maven  eclipse  dependencies  log4j  

maven2安装
说是安装其实就是下载相关的bin包就可以了
1、首先去官方网站下载之: [url]http://maven.apache.org/download.html[/url],我选择的是截至目前最新版本maven3.0.4版本
2、设置环境变量:Maven2下载完后,我将其解压到我的计算机的d:\maven304下,目录结构如下:
D:\
|--Maven204
|-- bin
|-- conf
|-- core
|-- lib
|-- local

环境变量:(windows下面)
        我的电脑----属性----高级----环境变量,点击“系统变量”下的新建,输入:变量名 MAVEN_HOME; 变量值d:\Maven204,在系统变量列表中找到系统变量path,打开之,在变量值中追加”;%MAVEN_HOME%\bin”,至此环境变量设置完毕。
        检查一下是否已经完成安装,打开dos窗口,输入mvn –v,如果出现以下信息则表示maven2已经安装成功:
X:〉mvn –v
Apache Maven 3.0.4 (r1232337; 2012-01-17 16:44:56+0800)
Maven home: D:\lizx\resource\maven\apache-maven-3.0.4\bin\..
Java version: 1.6.0_22, vendor: Sun Microsystems Inc.
Java home: D:\application\jdk1.6_22\jre
Default locale: zh_CN, platform encoding: GBK
OS name: "windows xp", version: "5.1", arch: "x86", family: "windows"
 
三、用maven2创建第一个java工程
1、选择一个根目录,我的java工作目录是D:\eclipse\workspace
2、打开dos窗口采用cd命令进入D:\eclipse\workspace目录下
3、输入下列指令

看到很多的文章直接进行如下的操作了,但是从操作后mvn会在库中下载一批jar包,默认是放到 用户名\Documents and Setting \.m2\repository 下面的,windows一般是C盘
  <!-- localRepository
   | The path to the local repository maven will use to store artifacts.
   |
   | Default: ~/.m2/repository
   -->

在此之前其实可以修改mvn解压目录下的conf\setting.xml路径,增加
<localRepository>D:\mvn304\repository</localRepository>  
来重新定向以后包的存放位置,因为可能会很大,这样以后mvn下载的,和我们自己放的都可以放到这下面了就

D:\eclipse\workspace>mvn archetype:create -DgroupId=com.efn -DartifactId=study   -----------------------这里是生成的一般的java工程
指令执行完毕会出现如下的目录结构:
study
|-- pom.xml
`-- src
|-- main
| `-- java
| `-- com
| `-- mycompany
| `-- app
| `-- App.java
`-- test
`-- java
`-- com
`-- mycompany
`-- app
`-- AppTest.java


如果我们要生成mvn 的web工程可以如下操作
mvn archetype:create -DgroupId=com.leelf -DartifactId=mvnproj2_sub_web -DarchetypeArtifactId=maven-archetype-webapp



四、生成eclipse工程文件
我采用的开发工具是eclipse,所以用maven的eclipse参数生成eclipse工程文件。输入如下
1、 采用dos的cd命令进入study目录
2、 输入指令:mvn eclipse:eclipse 如下所示:
D:\eclipse\workspace\study>mvn eclipse:eclipse
指令执行完毕后,发现多了两个文件:.classpath和.project

五、下载maven的eclipse插件
1、打开eclipse
2、打开菜单 help -Software updates-Find and Install
3、选择第二项,进入下一步
4、点击按钮“New Remote Site…”
5、在Name中输入:Maven2,在URL中输入[url]http://m2eclipse.codehaus.org/[/url]
Ok,现在一切都是自动化的,你所需要做的就是等待并按提示按按钮。

六、导入工程
刚才已经生成了eclipse的工程文件,现在导入之。菜单File-import ,
在这里我们可以选则导入mvn--->existing mvn projects 进行选择导入。导入后修改相应的jdk等的编译就可以了

打开study的pom.xml文件,会有如下类似内容:

xml 代码
  1. <project  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 [url]http://maven.apache.org/maven-v4_0_0.xsd[/url]">  
  2.   <modelVersion>4.0.0</modelVersion>  
  3.   <groupId>com.efn</groupId>  
  4.   <artifactId>study</artifactId>  
  5.   <packaging>jar</packaging>  
  6.   <version>1.0-SNAPSHOT</version>  
  7.   <name>Maven Quick Start Archetype</name>  
  8.   <url>[url]http://maven.apache.org[/url]</url>  
  9. </project>  

注意:有关这个文件的作用和各节点的作用不是本文的描述重点,可以到maven的官方网站查阅 [url]http://maven.apache.org/[/url]目前为止,所有的准备工作都已经就绪,现在我们就以一个主main函数 使用log4jjar包展示下如何导入第三方的jar包

七、搭建架包
每一个java工程都不免使用第三方的架包,Maven的好处就是可以统一管理这些架包,并使多个java工程共享这些架包。我们所需要做的就是按规则编辑pom.xml文件。Maven已经非常智能,使用maven的eclipse插件的向导,只要输入参数就可以将配置文件生成出来。

有两种方式可以采用:
1、自动向导
第一种是采用向导方式并让向导直接去maven的服务器上下载你需要的架包,这种方式存在一定的风险,一来可能maven的服务器上并没有你需要的东东,二来每次智能的maven总是去寻找那并不存在的东东。抛出一大堆红字提示不说,达不到预期目标才是让人郁闷。不过为了保证文档的完整性,还是给出操作步骤。以junit为例(这个东东倒是没有问题,呵呵)当工程的maven被Enable后,弹出菜单的maven2子菜,选择子菜单的“Add Dependency”菜单项,在Query中输入“junit”,向导会自动列出相关列表供选择。选择你最需要的架包,按“OK” 按钮。
如果你的本地仓库已经存在该架包,则向导只在pom.xml加入依赖项信息,pom.xml文件的内容如下
xml 代码
  1. <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://[url]www.w3.org/2001/XMLSchema-instance[/url]"  xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 [url]http://maven.[/url]"apache.org/maven-v4_0_0.xsd>  
  2. <modelVersion>4.0.0</modelVersion>  
  3. <groupId>com.efn</groupId>  
  4. <artifactId>study</artifactId>  
  5. <packaging>jar</packaging>  
  6. <version>1.0-SNAPSHOT</version>  
  7. <name>Maven Quick Start Archetype</name>  
  8. <url>[url]http://maven.apache.org[/url]</url>  
  9. <dependencies>  
  10. <dependency>  
  11. <groupId>junit</groupId>  
  12. <artifactId>junit</artifactId>  
  13. <version>3.8.1</version>  
  14. </dependency>  
  15. </dependencies>  
  16. </project>  
自动导入的经常有错误啥的,就不推荐了啊

2、手工配置
        
        手工配置前还是先介绍一下相关背景知识。首先了解一下jar仓库的概念,maven采用集中化的方式管理架包,凡用maven构建的java工程都可以重用统一管理下的架包,所以必须有一个统一存放jar文件的地方,这就是jar仓库,不论是开发还是部署都会建立一个本地仓库。
现在我们分析一下配置文件pom.xml的结构,以junit为例,格式如下:
xml 代码
  1. <dependencies>  
  2. <dependency>  
  3. <groupId>junit</groupId>  
  4. <artifactId>junit</artifactId>  
  5. <version>3.8.1</version>  
  6. </dependency>  
  7. </dependencies>  
在来看看本地仓库目录结构
Repository
`-- junit
|-- junit
| `-- 3.8.1
| `-- junit-3.8.1.jar
现在大家应该明白了吧,多余的话不说啦。照葫芦画瓢就是。不过注意先建目录后写配置文件,否则一旦保存,智能的插件就马上开始下载了…

现在开始手动建立oracle的jdbc目录并配置文件,首先建立目录结构如下:
Repository
`-- log4j
|-- log4j
| `-- 14
| `-- log4j-1.2.13.jar
如果你手头的jar文件名叫log4j1.2.3.jar,则改为log4j-1.2.3.jar,写配置文件:
xml 代码
  1. <dependency>  
  2. <groupId>log4j</groupId>  
  3. <artifactId>log4j</artifactId>  
  4. <version>1.2.3</version>  
  5. </dependency>  
那么现在一个完整的pom.xml文件如下:
xml 代码
  1. <!-- =============================dependencies================================== -->
      <dependencies>
        <!-- junit的包导入 -->
        <dependency>
          <groupId>junit</groupId>
          <artifactId>junit</artifactId>
          <version>3.8.1</version>
          <scope>test</scope>
        </dependency>


        <dependency>
        <groupId>log4j</groupId>
        <artifactId>log4j</artifactId>
        <version>${log4j-version}</version>
        <scope>compile</scope>
        </dependency>
      </dependencies>
      
       <properties>
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        <log4j-version>1.2.13</log4j-version>
      </properties>
      

保存之,则发现工程管理透视图发生了一点变化,依此方法再加上jdbc的架包,现在可以开始写程序了,建一个类并添加main函数,编写程序如下:
java 代码
  1. public class App 
    {
    static Logger logger = Logger.getLogger(App.class);
        public static void main( String[] args )
        {
            logger.info("================abcdef=================");
        }
    }

别忘了import相应的包,配置个log4j.properties的文件

八、编译程序
//待加

九、调试程序
//待加

Ok,一切正常!希望你也顺利!
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/DR_LF/article/details/7289163

智能推荐

深度学习RNN-程序员宅基地

文章浏览阅读771次,点赞22次,收藏11次。只记得我在一个昏暗潮湿的地方喵喵地哭泣着。——夏目漱石《我是猫》到目前为止,我们看到的神经网络都是前馈型神经网络。(feedforward)是指网络的传播方向是单向的。具体地说,先将输入信号传给下一层(隐藏层),接收到信号的层也同样传给下一层,然后再传给下一层……像这样,信号仅在一个方向上传播。虽然前馈网络结构简单、易于理解,而且可以应用于许多任务中。不过,这种网络存在一个大问题,就是不能很好地处理时间序列数据(以下简称为“时序数据”)。

Rsync数据复制——本地数据传输_rsync本地拷贝-程序员宅基地

文章浏览阅读2.5k次。1本地数据传输类似cp的复制,实现文件,目录的增量复制。#语法模式rsync命令 参数 src源文件/目录 dest目标文件/目录1.本地文件复制# 复制hosts文件[root@chaogelinux ~]# rsync /etc/hosts /tmp/2.复制目录内容-r, --recursive 对子目录以递归模式处理# 复制/data下所有内容到/tmp[root@lb01 ~]# rsync -r /data/ /tmp/# 复制/data整个文件夹到/tmp_rsync本地拷贝

随机密码约瑟夫环_py约瑟夫环问题n,k,m要求由键盘输入值,每个人持有的密码随机生成。 2、每个函数完-程序员宅基地

文章浏览阅读1.4k次,点赞3次,收藏11次。约瑟夫环问题: 问题描述:设有编号为1,2,3……n的n个人顺时针方向围坐一圈,每人有一密码(正整数)。开始时给出一初始密码m,从编号为1的人开始报数,报m的人出列;以后将出列者的密码作为新的m,从顺时针方向紧挨着他的下一个人开始报数……直至所有人出列。试编算法,求出出列顺序。要求:用不带头结点的单向循环链表实现从键盘输入n,m各人的密码由计算机随机产生(1~10的正整数,也可以自定义_py约瑟夫环问题n,k,m要求由键盘输入值,每个人持有的密码随机生成。 2、每个函数完

[晓理紫]每日论文分享(有中文摘要,源码或项目地址)--强化学习、模仿学习、机器人_frenetix rl-程序员宅基地

文章浏览阅读1.7k次,点赞21次,收藏17次。这项研究介绍了一种自主运动规划的新方法,在Frenet坐标系内用强化学习(RL)代理通知分析算法。这种结合直接解决了自动驾驶中适应性和安全性的挑战。运动规划算法对于导航动态和复杂的场景至关重要。然而,传统方法缺乏不可预测环境所需的灵活性,而机器学习技术,特别是强化学习(RL),提供了适应性,但存在不稳定性和缺乏可解释性。我们独特的解决方案将传统运动规划算法的可预测性和稳定性与RL的动态适应性相结合,使系统能够有效地管理复杂的情况并适应不断变化的环境条件。_frenetix rl

springboot+shardingsphere实现读写分离和分库分表_spring.shardingsphere.sharding.master-slave-rules-程序员宅基地

文章浏览阅读335次。springboot整合shardingshere+druid 读写分离和分库分表,mybatis-plus_spring.shardingsphere.sharding.master-slave-rules

OSPF特殊区域NSSA配置实验(思科)_ospf naas区域实验-程序员宅基地

文章浏览阅读1.5k次,点赞2次,收藏4次。OSPF特殊区域NSSA配置实验一、实验目的二、实验内容三、实验流程四、查看和验证**OSPF特殊区域NSSA和Total NSSA配置实验总结:**一、实验目的1.掌握OSPF协议的工作原理及其LSA的类型划分;2.掌握OSPF特殊区域的概念、分类和特点;3.掌握路由器中OSPF特殊区域NSSA区域的基本配置方法和结果验证;二、实验内容完成思科路由器OSPF特殊区域NSSA区域的基本配置和结果验证;三、实验流程(一)配置任务说明如下图所示:区域0是骨干域,将区域1设置为nssa区域,完成_ospf naas区域实验

随便推点

常见的Web应用的漏洞总结(原理、危害、防御)_web 应用中常见的漏洞及其危害有哪些-程序员宅基地

文章浏览阅读2.5k次。一、 SQL注入1.原理:SQL注入就是把SQL命令插入到Web表单然后提交到所在页面请求(查询字符串),从而达到欺骗服务器执行恶意的SQL命令。它是利用现在已有的应用程序,将SQL语句插入到数据库中执行,执行一些并非按照设计者意图的SQL语句。2.原因:根据相关技术原理,SQL注入可以分为平台层注入和代码层注入。前者由不安全的数据库配置或数据库平台的漏洞所致;后者主要是由于程序员对输入..._web 应用中常见的漏洞及其危害有哪些

离散数学——命题逻辑_离散数学命题逻辑-程序员宅基地

离散数学中的命题逻辑,包括命题的表示和联结词的运用,推理理论和常用的证明方法,如真值表法和直接证明法。还介绍了附加前提证明法或CP规则。

Spring Expression Language(SpEL)-程序员宅基地

文章浏览阅读8.6k次。Spring Expression Language(SpEL)spring的一种表达式。用来动态的获取,值、对象等。 样式: #{ …} 使用既定的规则放置在花括号中。式中的规则得以运行,可以反馈结果。理论上可以返回任何类型。 说说两种方式去设置SpELAnnotation注解。@Value()方便快捷。 你可以在里面方式任何符合SpEL规范的语句,并把它的返回值注..._spring expression language

ansible最大并发_通过这7种方法来最大程度地提高Ansible技能-程序员宅基地

文章浏览阅读1.7k次。ansible最大并发 Ansible是一种功能强大的无代理(但易于使用且轻巧)的自动化工具,自2012年推出以来一直稳步流行。这种流行在一定程度上是由于其简单性。 默认情况下,Ansible的最基本依赖项(Python和SSH)几乎在所有地方都可用,这使得Ansible可以轻松用于各种系统:服务器,工作站,Raspberry Pi,工业控制器,Linux容器,网络设备等。 Ansible可..._ansible 提升 高并发

Barcode Reader在45毫秒内实现条码识别-程序员宅基地

文章浏览阅读479次。应我的客户要求,需要找到一款可以在极短时间识别二维条码的软件以应对他们现在极其迅速的货品入库需求。正好听说过一款Dynamsoft Barcode Reader的开发包,根据其官网介绍最新版对条码检测速度比以前的版本快2倍以上。根据对Dynamsoft Barcode Reader8.8SDK包拆解,其中含了JavaScript Package /.NET Package /C/C++ Package /Python Package /Java Package /iOS Package /A..._barcode reader

mediasoup-demo在 Windows上的正确编译安装注意事项_npm安装那个版本最好-程序员宅基地

文章浏览阅读1.2k次。前人栽树,后人乘凉,文章参考https://blog.csdn.net/TsingSee/article/details/108618054,我要感谢此博客主,mediasoup-demo很多文章都是关于在linux系统下的,很多在windows都有问题,而唯独此博客主的文章正确。我学习此博客的文章对比才知道主要问题在于三点:1.node,npm版本最好是要高版本的。2.python版本问题,这个是最关键的,一定不能是python3版本,我这里用的是TSING博客主建议的python-v2.7.17_npm安装那个版本最好

推荐文章

热门文章

相关标签