当前位置: 首页 > 面试题库 >

Maven为不同的目标设置了什么类路径?您可以提供指向官方文档的链接吗?

严开宇
2023-03-14
问题内容

Maven为不同的目标设置类路径是什么?

我的问题:我在詹金斯(Jenkins)建立了一个项目。它从SVN中检出。接下来,将另一个文件检出到workspace- root/mydir/my.properties

然后,maven test运行。

在测试中,类通过在类路径上搜索文件来加载文件。为什么行得通?(我是Jenkins和Maven的新手,正试图弄清我正在寻找的工作是如何工作的…)


问题答案:

Maven使用<dependencies/>项目中定义的内容,将它们放在插件的类路径中。此外,<plugin/>您可以在每个插件的部分中定义<dependencies/>仅由插件使用的其他内容(因此不会以任何方式成为最终工件的一部分,也不会在上可见mvn dependency:tree)。

关于测试,重要的是要知道:

  • src/main/resources和下的资源src/test/resources分别复制到target/classes和中target/test-classes。这两个目录将添加到您的类路径中。(对src/main/java和有效src/test/java)。

  • 每个Maven插件都在其自己的类加载器中执行。

  • 执行测试时,maven-surefire-plugin通常会将您的测试存储到单独的类加载器中。

检查此链接。



 类似资料:
  • 我用eclipse创建了一个maven项目,并用下面的命令制作了jar文件 打包 当我尝试知道我的mvn项目配置是真的还是不是这个命令 mvn exec:Java-D exec . main class = " giraph . hello world . app " 我得到这个错误: 在helloworld项目上执行目标 org.codehaus.mojo: exec-maven-plugin:

  • 问题内容: 想知道不指定classpath选项时默认的classpath是什么吗? 问题答案: 当前的工作目录()。 从Java™教程中:PATH和CLASSPATH: 类路径 的 默认值为“。” ,表示仅搜索当前目录。指定CLASSPATH变量或-cp命令行开关将覆盖此值。 这包括子目录吗? 不,在类路径中没有条目是“递归的”。您必须明确列出每个子目录(或jar)。但是,如果您有一个表示clas

  • 问题内容: 我正在使用Sphinx记录非Python项目。我想在每个子模块中分发文件夹,其中包含用于记录该模块文件的文件。然后,我想将这些文件吸收到主层次结构中,以创建整个设计的规范。 即: 我试图像这样在主文档toctree中包含文件: 但是,此错误消息导致: 警告:toctree包含对不存在的文档u’modules / module1 / docs / module1’的引用 是否无法以某种方

  • 问题内容: 据我了解,URL由以下字段组成: 通讯协定(http,https,ftp等) 用户名 用户密码 主机地址(IP地址或DNS FQDN) 端口(可以暗示) 服务器文档根目录中文档的路径 一组参数和值 文件部分(#) 如 我需要一个代码来从任何给定的URL字符串中获取任何这些字段的值(如果未设置,则为null /空值)。我是自己实现还是已经有相应的代码,因此我不需要发明轮子? 我对Scal

  • 我遇到了一个非常基本的问题。我想我可能在做一些愚蠢的事情,并希望有另一双眼睛。我正在运行Ubuntu 16.04.3 因此,我正在使用ASMifier,以便将我的java类转换为ash字节码。如果asm-6.0和asm-util-6.0 jars与我的java类位于同一文件夹中,并且我运行以下命令"java-classpath"asm-6.0.jar:asm-util-6.0.jar:."org.

  • 我的情况: 我有两个独立的项目A和B。 没有项目A。 A和B使用相同的库: < li >反射-0.9.9-RC1.jar < li >番石榴-11.0.2.jar < Li > XML-API-1.0 . B2 . jar < li>javassist-3.16.1-GA.jar < li>dom4j-1.6.1.jar < li>jsr305-1.3.9.jar 我制作了项目C,这是项目a的插件