当前位置: 首页 > 知识库问答 >
问题:

我可以在不安装的情况下向Maven3添加插件吗

闻人嘉颖
2023-03-14

我想在我的项目中添加一个修改过的maven插件。它包含一个在中央存储库中尚不可用的特性。我试过用system scope添加它,并在本地回购中安装它,但它不起作用。这是可行的还是我必须安装插件在每台机器上我想建立这个项目?

git repo可在以下位置找到:
https://github.com/crydust/dukeshoppinglist

更新
根据“Maven3-Distribute custom plugin in a.jar?”这需要我的项目之外的maven repo。如果是真的我会很难过的。

我终于把它弄好了。

svn co http://svn.apache.org/repos/asf/tomee/tomee/tags/tomee-1.5.2 tomee
cd ~/Projects/tomee/maven

patch tomee-maven-plugin/src/main/java/org/apache/openejb/maven/plugin/AbstractTomEEMojo.java < ~/Downloads/add_classpaths_config.diff
# fix rejected parts of patch
vim tomee-maven-plugin/src/main/java/org/apache/openejb/maven/plugin/AbstractTomEEMojo.java
# change version
vim tomee-maven-plugin/pom.xml

mvn deploy -DaltDeploymentRepository=repositoryId::default::file:///home/kristof/Projects/tomee/maven/repo/

现在,我将repo文件夹复制到我的另一个项目中,并将pluginRepositories(而不是repositories标签)添加到我的POM中。

<pluginRepositories>
    <pluginRepository>
        <id>repo</id>
        <url>file://${project.basedir}/repo</url>
    </pluginRepository>
</pluginRepositories>

从本地回购中移除已安装的插件后,它仍然可以工作。

rm -rf ~/.m2/repository/org/apache/openejb

共有1个答案

杜联
2023-03-14

尝试将github存储库用作maven存储库。

我找到了一个关于它的小手册--http://blog.rueedlinger.ch/2012/09/use-github-as-maven-remote-repository/

差别很小,您需要指定存储库插件:

<pluginRepositories>
    <pluginRepository>
        <id>Dukes Shopping List Github Repo</id>
        <url>http://your-repository</url>
        <snapshots>
            <enabled>true</enabled>
            <updatePolicy>always</updatePolicy>
        </snapshots>
    </pluginRepository>
</pluginRepositories>
 类似资料:
  • 我想在我的一个开源rails应用程序(3.2.12版)上安装New Relic。我不想在回购中使用许可证密钥。我想用ENV之类的东西来加载它。 默认情况下,它加载在newrelic中。yml文件。 YAML文件加载到哪里?我想我可以手动将其与从ENV哈希加载许可证的哈希合并。 有什么关于如何做到这一点的提示吗?

  • 问题内容: 在试验/快速而肮脏的开发阶段,Maven2让我发疯。 我有一个文件,该文件定义了要使用的Web应用程序框架的依赖关系,并且可以从该文件快速生成入门项目。但是,有时我想链接到尚未定义文件的第三方库,因此,不是pom.xml手动为第三方库创建文件并安装它,然后将依赖项添加到我的,告诉:“除了我定义的依赖项之外,还包括其中的所有。” 看起来这应该很简单,但是如果是这样,我就缺少了一些东西。

  • 问题内容: 我写了一些要在其他计算机上运行的.py文件。目标机器未安装python,因此我无法通过策略“安装”它。我所能做的就是复制文件,运行我的东西,然后将其删除。 我试图将开发python文件夹移至目标计算机,将cd移至python文件夹并运行。它给我一个错误,指出未注册python.dll。如果我注册了DLL,这可能会使我跨过“违反政策”行。 无论如何,我是否可以在没有实际安装python的

  • 我需要从我的中生成一个文件,但我希望避免创建。有可能吗?

  • 我们有一个包含一些VC++项目的Visual Studio解决方案,目前我们已经从VS2010升级到Visual Studio 2012。在此过程中,我们还将VC++项目提升到PlatformToolsetV110。 是否有任何其他SDK或安装包可以帮助解决此问题?

  • 问题内容: 我处理非常大的二进制文件(每个文件从几个GB到多个TB)。这些文件以旧格式存在,并且升级需要将标头写入文件的FRONT。我可以创建一个新文件并重写数据,但是有时这可能需要很长时间。我想知道是否有更快的方法来完成此升级。该平台仅限于Linux,我愿意使用低级功能(ASM,C,C ++)/文件系统技巧来实现这一目标。基本库是Java,JNI是完全可以接受的。 问题答案: 没有本机执行此操作