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

禁用maven远程资源插件的资源过滤

容修贤
2023-03-14

我正在尝试使用maven-telte-resource-plugin在多模块maven项目中跨模块共享许多资源。不幸的是,共享的二进制资源在捆绑期间被损坏,大概是通过过滤。

我相信,由于从本地存储库中提取共享资源jar时包含损坏的二进制文件,因此在这一阶段会发生损坏。

是否有任何关闭过滤maven-远程资源插件?

目前,我的共享资源模块中的pom看起来像

<build>
  <plugins>
    <plugin>
       <artifactId>maven-remote-resources-plugin</artifactId>
       <executions>
         <execution>
           <goals>
             <goal>bundle</goal>
           </goals>
         </execution>
       </executions>
       <configuration>
         <includes>
           <include>**/*</include>
         </includes>
       </configuration>
     </plugin>
  </plugins>
</build>

<dependencies>
  <dependency>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-remote-resources-plugin</artifactId>
    <version>1.3</version>
  </dependency>
</dependencies>

共有3个答案

池麒
2023-03-14

我们直接使用共享资源pom中的资源子句在本地存储库中创建了jar。我认为这是使用maven-resource-plugin(?)。

共享资源

<build>
  <resources>
    <resource>
      <directory>src/main/resources</directory>
      <filtering>false</filtering>
      <includes>
        <include>**/*</include>
      </includes>
    </resource>
  </resources>
</build>

资源-消费者

<build>
  <resources>
    <resource>
      <directory>${project.build.directory}/shared-resources</directory>
      <includes>
        <include>theOnlyOneIWant.properties</include>
      </includes>
    </resource>
  </resources>
  [...]
  <plugins>
    <plugin>
      <artifactId>maven-dependency-plugin</artifactId>
      <version>2.5</version>
      <executions>
        <execution>
          <id>shared-resources</id>
          <goals>
            <goal>unpack-dependencies</goal>
          </goal>
          <phase>generate-resources</phase>
          <configuration>
            <includeGroupIds>myProjectGroup</includeGroupIds>
            <includeArtifactIds>myProjectSharedResources</includeArtifactIds>
            <outputDirectory>${project.build.directory}/shared-resources</outputDirectory>
          </configuration>
        </execution>
      </executions>
    </plugin>
  </plugins>
</build>

这可能不适用于可以使用maven-telte-resource-plugin的所有实例,但它对我们有效并解决了二进制资源损坏的问题。

齐学文
2023-03-14

你有没有试过:

<plugin>
        <artifactId>maven-remote-resources-plugin</artifactId>
        <version>1.3</version>
        <executions>
          <execution>
            <id>process-remote-resources</id>
            <goals>
              <goal>process</goal>
            </goals>
            <configuration>
              <useDefaultFilterDelimiters>false</useDefaultFilterDelimiters>
              [...]
            </configuration>
          </execution>
        </executions>
      </plugin>
方梓
2023-03-14

听起来好像资源在捆绑期间被破坏了。由于资源项目只是一个jar,它将执行资源插件作为默认生命周期的一部分。尝试将其添加到资源项目的POM中。

<plugin>
    <artifactId>maven-resources-plugin</artifactId>
    <version>2.6</version>
    <executions>
      <execution>
        <id>default-resources</id>
        <configuration>
          <nonFilteredFileExtensions>
            <nonFilteredFileExtension>exe</nonFilteredFileExtension>
            <nonFilteredFileExtension>dontFilterMeEither</nonFilteredFileExtension>
          </nonFilteredFileExtensions>
          [...]
        </configuration>
      </execution>
    </executions>
  </plugin>

文档描述了默认情况下未过滤的二进制文件;上面的配置将扩展添加到列表中。

 类似资料:
  • 我正在使用maven-resource-plugin 2.6 vith maven 3.0.5(也尝试了3.0.4)。 我有不同的处决: 当我把下面的方块 在我的内部 我需要把它放进去 这是一个问题吗?因为当我启动构建时,我的pom.xml没有错误。

  • 我想将构建信息写入属性文件。我找到了Maven资源过滤插件。这就是我的pom相关部分的样子: 如果start构建成功,但我的文件下src/main/资源将不包含构建信息。 我的属性文件如下所示: 我做错了什么?非常感谢。

  • 我试图在构建时使用maven资源插件复制xml文件,但到目前为止没有成功。 Maven目标-干净安装 它需要任何特殊的maven目标来复制东西吗?请帮帮我。 插件版本 提到这个

  • 以下 是对开发kibana 插件有用的资源 IRC channel kibana 官方为大家注册了一个类似聊天室的通道,在这里大家可以获取有用咨询和交流 Freenode Web Client. 文章 contributing guide kibana-plugin-notes(强烈推荐阅读) 视频 Contributors Guide to the Kibana Galaxy Kibana Pl

  • 我得到了一个具有以下结构的Vaadin项目: 到目前为止,我从我的IDE(IntelliJ)构建了我的项目 然后用“构建”来包装战争- 我的资源筛选如下: 问题:当我试图用maven构建整个项目时 webapp/WEB-INF/类下的资源被跳过,它们在目标/Project/WEB-INF/类目录中,但变量是${...}(hibernate-dashboard.cfg.xml和quartz.prop

  • 22.10.资源 Java 插件使用 Copy 任务处理资源. 它为项目每个 source set 都增加了一个实例. 可以参考Section 15.6, “Copying files” 获取关于copy任务的信息. 表22.12.java 插件- ProcessResources 的属性 任务属性 类型 默认值 srcDirs Object.可以在Section 15.5, “Specifyin