没有(远程)存储库的Maven?
我有一个Maven 2多模块项目,希望确保所有内容都来自本地签出的源代码没有(远程)存储库的Maven?,maven,repository,multi-module,Maven,Repository,Multi Module,我有一个Maven 2多模块项目,希望确保所有内容都来自本地签出的源代码 有没有可能告诉Maven永远不要下载它所拥有的源代码模块的任何东西?我必须禁用远程存储库吗 Maven是否总是要花费高昂的代价将模块安装到本地存储库中,然后为每个依赖项重新提取模块 如果模块的本地源更改,Maven是否会自动首先重新编译模块的依赖项,然后编译依赖项 有没有可能告诉Maven永远不要下载它所拥有的源代码模块的任何东西 不,Maven 2在构建时只“看到”当前模块。另一方面,您可以通过在模块中运行Maven
- 有没有可能告诉Maven永远不要下载它所拥有的源代码模块的任何东西?我必须禁用远程存储库吗
- Maven是否总是要花费高昂的代价将模块安装到本地存储库中,然后为每个依赖项重新提取模块
- 如果模块的本地源更改,Maven是否会自动首先重新编译模块的依赖项,然后编译依赖项
-o
或-offline
。或者对没有任何文件的代理使用settings.xml
。但这不是你想要的
Maven是否总是要花费高昂的代价将模块安装到本地存储库中,然后为每个依赖项重新提取模块
是的,但是不贵。在构建过程中,复制文件(十年前很昂贵)。使用依赖项时,Maven只是将文件路径添加到Java进程中。因此,不会再次复制或修改该文件。Maven假定本地存储库中的文件不会更改(或者在下载/安装时只更改一次)
如果模块的本地源更改,Maven是否会自动首先重新编译模块的依赖项
没有。Maven 3有计划,但我找不到一个选项来启用类似的功能
要解决您的问题,您应该安装一个本地代理(如)
$USER\u HOME/.m2/存储库
)中不可用时才下载内容(依赖项)。如果您不想下载任何内容,请使用脱机模式。这可以通过使用-o
开关来完成。例如
mvn -o clean install