首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

maven基础知识

maven中的一个依赖不仅仅是一个jar,他是一个pom(project object model)文件,这个pom可能声明了对其他构建的依赖。...当为项目创建jar文件的时候,它的依赖不会捆绑在生成的构件中,他们只是用来编译。...当maven来创建war或jar,你可以配置maven让它在生成的构件中捆绑依赖,也可以用provided范围,让它排除war文件中特定的依赖。...当你开发web应用的时候provided范围变得十分有用,你需要Servlet API来编译你的代码,但是你不希望Servlet API的jar文件包含在你的web应用的web-inf/lib目录中。...这样的构件应该是一直可用的,maven也不会在仓库中寻找它。如果你将一个依赖范围设置成系统范围,你必须同时提供一个systemPath元素。这一该范围是不推荐使用的。

73060

Maven 引用项目中的jar包

>${pom.basedir}/src/main/webapp/WEB-INF/lib/patchca-0.5.0.jarsystemPath> 这样就省去了将jar包安装到本地...这么做的目的是为了使用mvn:compile去编译项目,有些开发工具会在代码被修改后自动编译,因为在ide的环境中web项目的lib目录可能已经被添加为了classpath,但是在maven执行编译的时候...,这个lib目录下的jar包是不会自动加入到classpath的,这里使用的不是加入classpath的方式,而是直接用maven指定jar文件的方式,更加方面,可移植性更高。...注意,这里使用的是pom.basedir而不直接写basedir就是为了在执行maven命令的时候,避免因为manve引入了项目中的jar发出类似于下面的警告。...at files within the project directory, ${basedir}/src/main/webapp/WEB-INF/lib/patchca-0.5.0.jar will

84710
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    maven引入本地jar包的方法

    优点:简单,不用做额外的配置 缺点:协作开发,多人都需做同样的操作,沟通也是一回事 4. pom文件scope的system属性 优点:配置后之后直接引入,maven reImport即可 缺点:没啥缺点...,就是配置者得费些时间 前置条件 要引入如下taobao-sdk-java.jar 操作 自定义目录,这里在project的根目录新建lib文件夹,将jar放进去 ?...:自定义 version:自定义 scope:必须是system systemPath:jar包的路径(idea编写的时候会有提示的) 通过上述方式,在开发环境没有什么问题,不会存在什么包找不到等情况...但是,maven project部署一般打包发布,所以打包是需要额外配置的(上述的第一二中方式不需要做额外处理) 处理打包 打包的时候需要做如下配置,需要通过resource标签引入,位置build→resources... directory:指定lib文件夹的位置,由于是相对工程根目录,所以直接写上lib即可 targetPath:打包到的文件夹位置

    13.4K55

    maven引入本地jar包

    前置条件 要引入如下taobao-sdk-java.jar 操作 自定义目录,这里在project的根目录新建lib文件夹,将jar放进去 pom.xml中引入 <dependency...:自定义 version:自定义 scope:必须是system systemPath:jar包的路径(idea编写的时候会有提示的) 通过上述方式,在开发环境没有什么问题,不会存在什么包找不到等情况...但是,maven project部署一般打包发布,所以打包是需要额外配置的(上述的第一二中方式不需要做额外处理) 处理打包 打包的时候需要做如下配置,需要通过resource标签引入,位置build→resources... directory:指定lib文件夹的位置,由于是相对工程根目录,所以直接写上lib即可 targetPath:打包到的文件夹位置...,写上BOOT-INF/lib即可,或者是WEB-INF/lib。

    1.5K30

    idea如何打包_用两种方法表示13

    方式一、build打包 1、进入project structure 2、要选择启动类以及MANIFEST.MF选择src目录下即可 之后在项目里会生成一个META-INF文件夹,就是存储了项目的元信息...(不用管就行) 3、进行build打包 打包后生成jar包应该位于项目下out目录中。.../src/main/resources/lib/gbase.jarsystemPath> scope:需要配置指定为system; systemPath:指向jar包的地址...–打war包命令 mvn clean package -Dmaven.test.skip=true–> 最后打包生成的文件: .jar.original 是普通jar包,不包含依赖 .jar 是可执行...jar包,包含了pom中的所有依赖,可以直接用java -jar 命令执行 如果是部署,就用.jar 如果是给别的项目用,就要给.jar.original这个包 版权声明:本文内容由互联网用户自发贡献

    9.5K40

    maven实战总结,工作中常见操作

    打包 package:动态 Web 工程打 War 包,java 工程打 jar 包。 安装 install:将打包得到的文件复制到 “仓库” 中的指定位置(Maven特定的概念)。...该点对应到 maven 就是 .jar、.war 等文件的文件。...在路径长度一致的前提下,如果 B 依赖在 POM 文件中声明顺序在 C 依赖之前,那么 Y(1.0) 则会被引入。...其中 default 生命周期的构建方式会其打包类型有关、打包类型在POM中 packaging 指定。一般有 jar、war 两种类型。下面是默认绑定插件与生命周期关系图: ?...一、内置属性 ${basedir} 表示项目根目录,即包含 pom.xml 文件的目录 ${version} 等同于 或者 {pom.version} 表示项目版本 二、POM 属性 所有 pom 中的元素都可以用

    1.3K30

    Maven pom 中配置依赖机制

    Maven 使用定义良好的类路径和库版本在定义、创建和维护可重复的构建方面帮助很大。 pom 文件中的 dependencies 标签示例 的所有依赖。...通过在项目的 POM 中显式地声明它,始终可以保证一个版本。注意,如果两个依赖项版本在依赖项树中的深度相同,则第一个声明胜出。...直接指定依赖项的另一个原因是,它为您的项目提供了更好的文档: 您可以通过在项目中读取 POM 文件或者通过执行 mvn dependency:tree来了解更多信息。...Dependency Scope 依赖项范围 这允许您只包含适用于当前生成阶段的依赖项。下面将对此进行更详细的描述。 compile 默认就是compile,什么都不配置也就是意味着compile。...system 从参与度来说,也 provided 相同,不过被依赖项不会从 maven 仓库抓,而是从本地文件系统拿,一定需要配合 systemPath 属性使用。

    1.9K40

    maven使用总结

    步骤 Maven使用总结 依赖范围 maven创建的工程的目录中包含main和test文件夹,分别表示主程序的文件夹和测试程序的文件夹 maven使用scop设置依赖范围,常用的依赖范围如下:.../webapp/WEB-INF/lib/dubbo-provider-helloService-0.0.1.jarsystemPath> 依赖传递 在开发项目的时候,...的路径是2,但是到Hello中的log4j1.2.14的路径为3,因此Maven会选择HelloFriend中的log4j1.2.17版本作为MakeFriend的依赖 pom文件中申明顺序优先 在路径都是一样的情况下...generate-resources 生成工程包中需要包含的资源文件。 process-resources 拷贝和处理资源文件到目的目录中,为打包阶段做准备。 compile 编译工程源码。...在pom.xml配置文件中配置module 详细的pom.xml如下: project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http

    50510

    pom文件的使用

    众所周知,pom.xml文件是maven工程的核心文件,是全局级别的配置文件;可以在该文件中添加jar包的依赖,使用plugin来配置一些规则;在执行task或goal时,maven会去项目根目录下读取...一、maven内置属性(maven预定义,用户可以直接使用) ${basedir}表示项目根目录,既包含pom.xml文件的目录 ${version}表示项目版本 ${project.basedir},...> 扩展:指定生成的jar包文件名并带时间戳 ${project.artifactId}-${project.version...Maven 使用外部依赖的概念来解决这个问题。 对maven项目做如下修改: 在 src 文件夹下添加 lib 文件夹 复制任何 jar 文件到 lib 文件夹下。我们使用的是 abc.jar。...三、查看完整pom.xml文件内容 执行命令: mvn help:effective-pom 四、pom文件中添加对jar包的复制 需求:将项目中 src/resources/lib目录下的 ant-1.7.1

    3.2K30

    springboot打包部署的那些事

    >spring-boot-maven-plugin 打jar的小细节 当有引入本地jar配置,如下图 ?...>${project.basedir}/lib/eis_protobuf.jarsystemPath> springboot-maven-plugin打包的第一级目录为...Boot-INF,如果不做任何配置,直接mvn clean package会发现无法把本地的jar打进Boot-INF中,则此时要做如下配置 方法一 在pom.xml的resources节点添加如下内容...mybatis的mapper文件或者activiti生成器的json文件,则也要把相应的文件打进resources中,否则项目启动会因找不到配置文件,而报错,配置文件如下 ...插件打包,因为这个打包插件会把jar打包在Boot-INF目录下导致别的项目引用时引用不到,此时改用maven-war-plugin打包,具体配置如下 <artifactId

    8.3K31

    Java EE7和Maven工程入门(4)

    定义EAR maven模块 在下图可以看到,我们在sample-parent下定义了一个空文件夹,叫做sample-ear。这个文件夹需要有一个pom.xml文件。...这是我们所有库定义的地方(除了包含ear的顶层模块,通常也包会含ear的’lib’子文件夹)。 什么是顶层模块?它实际上是,将会打包在ear中的jar包和wars包,而且将会被看成是一等公民。...当该属性启用时,我们会对war项目中引用的第三方库打包时执行一个确定的模型。简单来说,我们的war档案不会包含任何WEB-INF\lib文件夹中定义依赖的外部函数库。...让我们检查一下sample-ear模块的’target’文件夹,最终的ear已经生成了。maven还在ear中创建了’exploded’版本,(下图是放大版本)。...请注意,我们的两个顶级ear元素,以及sample-domain.jar是如何在ear的’lib’文件夹下的。同时还需要注意一些基本的库,像javaee-api.jar,并没有包含在lib文件夹下。

    87810

    Maven学习笔记

    得益于 Maven 的坐标机制,任何 Maven 项目使用任何一个构件的方式都是完全 相同的,Maven 可以在某个位置统一存储所有的 Maven 项目共享的构件,这个统一的位置就是仓库,项目构建完毕后生成的构件也可以安装或者部署到仓库中...即常见的本地工程 - Java Project。 WAR工程 将会打包成 war,发布在服务器上的工程。如网站或服务。即常见的网络工程 (Dynamic Web Project)。...target : 编译后内容放置的文件夹 pom.xml : 是 Maven 的基础配置文件。...1、新建一个maven项目, 工程类型选择为war项目 2、在webapps目录下创建WEB-INF目录 3、在WEB-INF目录下创建web.xml文件,并添加相应代码 4、目项目报错,更新项目...Nexus的启动脚本文件中,可以指定私服应用的访问用户,此信息在nexus-2.11.2-03/bin/nexus 脚本文件中定义。

    1.1K30

    SpringBoot 部署打包成 jar 还是 war?网友:肯定是。。。

    通过jar运行实际上是启动了内置的tomcat,所以用的是应用的配置文件中的端口 直接部署到tomcat之后,内置的tomcat就不会启用,所以相关配置就以安装的tomcat为准,与应用的配置文件就没有关系了...jar包和war包的区别 1、war是一个web模块,其中需要包括WEB-INF,是可以直接运行的WEB模块;jar一般只是包括一些class文件,在声明了Main_class之后是可以用java命令运行的...这个包中的文件按一定目录结构来组织;classes目录下则包含编译好的Servlet类和Jsp或Servlet所依赖的其它类(如JavaBean)可以打包成jar放到WEB-INF下的lib目录下。...将Servlet类文件放到WEB-INF\classes目录下,将Web应用程序所使用Java类库文件(即JAR文件)放到WEB-INF\lib目录下。...类,这个类的位置需要和启动类在同一个文件下 如果一开始选择war包形式,会自动创建此类 2)修改pom.xml 修改pom.xml的war将原先的jar改为war; 3)如果我们的SpringBoot

    93830

    SpringBoot 在打包部署的时候打包成 jar 和 war 有什么不同?

    通过jar运行实际上是启动了内置的tomcat,所以用的是应用的配置文件中的端口 直接部署到tomcat之后,内置的tomcat就不会启用,所以相关配置就以安装的tomcat为准,与应用的配置文件就没有关系了...1jar包和war包的区别 1、war是一个web模块,其中需要包括WEB-INF,是可以直接运行的WEB模块;jar一般只是包括一些class文件,在声明了Main_class之后是可以用java命令运行的...这个包中的文件按一定目录结构来组织;classes目录下则包含编译好的Servlet类和Jsp或Servlet所依赖的其它类(如JavaBean)可以打包成jar放到WEB-INF下的lib目录下。...将Servlet类文件放到WEB-INF\classes目录下,将Web应用程序所使用Java类库文件(即JAR文件)放到WEB-INF\lib目录下。...类,这个类的位置需要和启动类在同一个文件下 如果一开始选择war包形式,会自动创建此类 2)修改pom.xml 修改pom.xml的war将原先的jar改为war; 3)如果我们的SpringBoot

    1.2K10
    领券