术语“澄清”在“类路径”上



当在引导文档中使用短语" is on the classpath "时,对于构建spring引导maven项目的linux人员,我可以得到它的确切含义吗?

  1. 它是不清楚的上下文在时间:它是在谈论编译或运行时或重新打包时间或什么?

  2. 是否表示jar/manifest在当前项目目录的子目录下,比如target/…classes

  3. 是否表示jar在目录

  4. 对于一个新手来说,我读了维基百科和oracle的解释,但这似乎意味着一些不同的东西,或者它意味着我应该生来就知道maven在构建过程中对类路径进行了某种修改。

  5. 或者在重新打包的jar运行时呢?

  6. 有谁会怜悯一个新手并帮助我的任期吗?

我试着回答你的问题:

  1. 您可以有编译类路径以及运行时类路径(Maven也有测试类路径)。它们可以是不同的,所以这取决于上下文,是指哪一个。

  2. 从技术上讲,目录结构是什么并不重要,因为您可以将磁盘上的每个目录添加到您的类路径。

  3. 如果您使用Maven,那么只有在POM中定义的jar才会自动添加到编译类路径中(这也用于打包)。

  4. Maven在构建过程中使用不同的类路径。例如,在编译时,它会使用提供或编译范围内的所有依赖项,并将它们添加到类路径中。对于测试,测试范围中的附加依赖项被添加到类路径中,以编译和执行测试。

最新更新