在使用maven编译打包一个web应用的时候,碰到一个问题:
有些项目的jar包不是在maven服务器上能够下载的,那么需要将这样的包放在项目的lib目录下,
不过这样会导致maven打包时找不到包,报错。可以通过下面的方法解决这个问题
显然实在编译的时候WEB-INF/lib并没有配置到maven-complier-plugin插件src目录中去,
于是将这个目录添加进去,还是不好使。
方法一:
先把这个jar包安装到本地库中,然后添加dependency。
方法二:
后来google了下,发现maven提供了scope为system的依赖,文档的原文如下:
system
This scope is similar to provided except that you have to provide the JAR which contains it explicitly.
The artifact is always available and is not looked up in a repository.
这样就可以添加dependency而不需要再将WEB-INF/lib目录下的jar包安装到本地库中了。
具体配置录下:
Xml代码
<dependency>
<groupId>org.apache</groupId>
<artifactId>test</artifactId>
<version>1.0</version>
<scope>system</scope>
<systemPath>${basedir}/src/main/webapp/WEB-INF/lib/paypal_base.jar</systemPath>
</dependency>
上面的groupId和artifactId这些都可随便填写就好.
方法三:
<build>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.6</source>
<target>1.6</target>
<encoding>UTF-8</encoding>
<compilerArguments>
<extdirs>src\main\webapp\WEB-INF\lib</extdirs>
</compilerArguments>
</configuration>
</plugin>
</plugins>
</build>
相关推荐
- 这样,jar包会被添加到项目的`lib`目录下,并且在Maven的`libraries`部分显示。 2. 配置Artifacts 为了让项目在构建时包含这些本地jar包,我们需要配置Artifacts。Artifacts是Idea中用来定义构建输出物的概念,...
### Springboot 打Jar包,Maven完美解决本地Jar包自动打入Springboot Jar包中 #### 背景介绍 随着微服务架构的流行,Spring Boot 成为了开发微服务应用时首选的技术栈之一。它简化了传统的Java Web应用程序的开发...
然而,有时候在运行Maven项目时,可能会遇到找不到特定jar包的问题,比如本例中的`tools-1.8.0.jar`。这个问题通常表明Maven在构建路径或本地仓库中未找到该依赖。下面我们将详细探讨如何识别、解决此类问题。 首先...
解决这个问题,我们需要检查Nexus的日志,找出具体原因,如网络问题、权限问题或文件格式不正确等。同时,也要确保Maven项目的`pom.xml`文件中引用的依赖版本与私有仓库中的实际版本匹配。 总的来说,搭建和维护...
Android引用包含远程依赖库的aar(引用aar时找不到arr的远程依赖库问题); aar引用很简单,将sdk-zhousf-1.0-20170907.054540-1.aar复制到libs包下,在项目的build.gradle文件中增加以下代码即可: compile(name:'sdk-...
然而,在使用Maven构建项目时,可能会遇到发布到Tomcat服务器的困难,这是由于Maven的构建机制和Tomcat的部署机制之间的不兼容性所致。在本文中,我们将讨论如何解决Maven构建的项目无法发布到Tomcat服务器的问题。 ...
- **学习和研究**:对于学习Maven的原理或者分析特定库的实现,源码包是必不可少的。 - **发布和分发**:当项目完成后,通常会生成jar包并上传到Maven中央仓库或私有仓库,供其他开发者引用。 总之,Maven的jar包和...
1. **依赖打包到外部**:使用`maven-assembly-plugin`或`maven-shade-plugin`,我们可以将依赖打包到一个单独的lib目录下。比如,通过`maven-assembly-plugin`的`dependencySet`配置,我们可以指定哪些依赖应该被...
如果jar包内部的lib目录包含了其他jar包,那么运行时需要把这些库也加入到类路径中。 5. **库冲突**:如果多个库包含相同的类,可能会导致类加载冲突。解决方法包括使用不同的类加载器、使用特定的打包策略(比如...
这样,Maven会优先从阿里仓库查找依赖,找不到时才会去中央仓库。 4. 压缩包文件`apache-maven-3.3.9`: 这是Apache Maven的3.3.9版本安装包。包含bin、conf、lib等目录,其中bin目录下的可执行文件(如mvn.exe或...
在给定的标题“maven下载指定jar到指定目录”中,我们关注的是如何利用Maven来下载特定的JAR文件,并将其放置到用户指定的目录下。下面将详细介绍这一过程。 首先,Maven使用POM(Project Object Model)文件来定义...
标题中的“tomcat下的lib下的jar包”指的是Apache Tomcat服务器中的`lib`目录下的Java Archive (JAR) 文件。Tomcat是一个流行的开源Web应用程序服务器,遵循Java Servlet和JavaServer Pages(JSP)规范。在Tomcat的...
在Windows上安装Maven,首先需要解压这个压缩包到一个合适的目录,然后将Maven的bin目录添加到系统的PATH环境变量中。这样,你就可以在任何地方通过`mvn`命令来调用Maven。 在使用Maven时,你需要创建一个基本的POM...
有时,我们可能会遇到一些不常见的库或者自定义的jar包,这些库并未在Maven中央仓库中提供,这时就需要将这些jar包手动添加到本地Maven仓库,以便在项目中引用。以下是一个详细的步骤指南,教你如何完成这一过程。 ...
"解决IDEA使用Maven编译正常但是运行项目时却提示很多jar包找不到的问题" IDEA是IntelliJ开发的一款集成开发环境(IDE),Maven是 Apache 软件基金会的一款基于项目对象模型(POM)的项目管理工具。使用IDEA和Maven...
在package.xml文件中,我们可以定义如何打包项目,例如,将所有依赖项放入单独的lib目录,将源代码和文档打包到特定的子目录,并确保"readme.txt"位于ZIP包的根目录。 总的来说,通过正确配置这两个插件,我们可以...
解压后,通常会得到bin、conf、lib等目录,其中bin目录包含可执行的mvn命令,conf目录有maven的配置文件如settings.xml,lib目录则包含运行Maven所需的各种jar包。 总结,Maven2 是Java开发中的重要工具,它的依赖...
但这种方式的缺点是,在构建WAR包时,这些本地Jar包并不会被包含到`WEB-INF/lib`目录下,因此在部署时依然会遇到问题。 为了确保本地Jar包能在打包时被正确包含,我们需要进行以下步骤: 1. 找到IDEA项目中`.idea`...
在使用Maven管理项目依赖时,很多开发者会遇到无法直接通过Maven仓库下载Oracle JDBC驱动包的问题。这是因为Oracle的授权政策,Maven官方中央仓库并不直接提供Oracle JDBC驱动程序。为了在Maven项目中使用Oracle ...