2011-11-14 98 views
0

我有一个名为Utils的Maven项目,我正在开发。我还有另一个名为A的项目,它使用了Utils类。因此,我在A的POM中为Utils添加了一个依赖项。我确切地说这两个项目没有安装在本地存储库(或另一个私有存储库)中。当我尝试打包项目A时,出现错误,因为Maven试图从本地存储库和中央存储库获取Utils项目,但它不在那里。我不想安装该项目,因为它不是最终的,我不想给它一个版本,因为没有发布。依赖项和工作区项目

感谢

回答

0

看来Eclipse上的Maven插件提供了这种可能性。并且不需要在本地存储库中安装与活动项目相对应的工件。看起来这个插件认为这个工作空间是第二个本地仓库(你可以使用Maven仓库视图来看到这个)。首先,必须启用Workspace解析功能(右键单击该项目,然后在Maven下)。当我想运行项目时,我使用运行配置向导,并且必须检查“解析”工作区。

这是一个很好的解决方案吗?我不知道它是否似乎工作,或者它真的有效。

谢谢

+0

最后,它适用于我,不需要在存储库中安装项目。该工作区可能被eclipse视为本地存储库。 –

0

它的安全项目安装到本地存储库。只需在Utils的项目文件夹中使用mvn install即可。任何时候你做install它会被你当地的回购中的最新版本取代。

但是不要部署它,这意味着其他人可以使用它。相比之下,您的本地回购仅供您使用。

+0

在我的情况下,我不想在远程存储库中安装工件。我也想禁止这个操作。但是我想知道每个人都有可能在Maven的远程仓库(http://repo1.maven.org/maven2)中部署工件吗? –

+0

'mvn install'将工件安装在本地存储库中(在您的硬盘驱动器上,用户配置文件目录的'.m2'文件夹中)。 repo1.maven.org基本上用于开源公共图书馆。如果您的公司需要开发人员共享的回购 - 您应该安装自己的回购,谷歌_Artifactory_或_Nexus_。 – kan

+0

是的,但我有我的工作空间与我正在处理的许多项目。按照前面的例子,每次我更改Utils代码时,即使应用程序没有被释放,我也需要重新安装这个工件。 –