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

在成功的maven构建结束时,不会生成karaf-assembly 4 . 0 . 5-zip ard tar.gz文件

姬捷
2023-03-14

我是一个没有经验的Java和Maven开发人员,尽管几年前我已经使用Karaf 3.0.1版本获得了karaf汇编版本。

当试图为定制的产品构建生成karaf-assemby 4.0.5时,在maven构建结束时不会创建zip和tar.gz文件。这..每次运行maven构建时都会创建/target/assembly目录,并且完成状态总是“构建成功”。

我怀疑这是因为POM文件有一个错误,由Eclipse IDE在karaf maven插件的部分直接在线突出显示,如下所示:

生命周期配置未涵盖的插件执行:org.apache.karaf.tooling:karaf-maven-plugin:4.0.5:汇编(执行:default-汇编,阶段:进程-资源)

我可以通过删除“扩展”行来解决IDE中的此错误,但随后在“打包”行中出现“项目构建错误:未知打包:karaf程序集”错误。

    <plugins>
        <plugin>
            <groupId>org.apache.karaf.tooling</groupId>
            <artifactId>karaf-maven-plugin</artifactId>
            **<!--  <extensions>true</extensions>  -->**
            <configuration>

                <startupFeatures></startupFeatures>
                <bootFeatures>
                  <feature>standard</feature>
                  <feature>management</feature>
                  <feature>jms</feature>

                </bootFeatures>
                <installedFeatures>
                </installedFeatures>
            </configuration>
        </plugin>

我使用的POM文件如下:

http://maven.apache.org/xsd/maven-4.0.0.xsd"

<modelVersion>4.0.0</modelVersion>

<groupId>my.custom</groupId>
<artifactId>my.distribution</artifactId>
<version>1.0</version>
<packaging>karaf-assembly</packaging>

<!-- PIP Operations Aspect Assembly properties -->
<properties>
    <maven-compiler-plugin-version>2.3.2</maven-compiler-plugin-version>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <assembly.directory>${project.build.directory}/assembly/karaf-4.0.5</assembly.directory>
    <karaf.name>karaf</karaf.name>
    <karaf.version>4.0.5</karaf.version>
    <pip.name>Operations Aspect</pip.name>
</properties>

<dependencies>

     <dependency> 
         <groupId>org.apache.karaf.features</groupId> 
         <artifactId>framework</artifactId> 
         <version>4.0.5</version> 
         <type>kar</type> 
     </dependency> 
     <dependency> 
         <groupId>org.apache.karaf.features</groupId> 
         <artifactId>framework</artifactId> 
         <version>4.0.5</version> 
         <classifier>features</classifier> 
         <type>xml</type> 
         <scope>runtime</scope> 
     </dependency> 
     <dependency>
        <groupId>org.apache.karaf.features</groupId>
        <artifactId>standard</artifactId>
        <classifier>features</classifier>
        <version>4.0.5</version>
        <type>xml</type>
        <scope>runtime</scope> 
    </dependency>
     <dependency>
         <groupId>org.apache.karaf.features</groupId>
         <artifactId>enterprise</artifactId>
        <classifier>features</classifier>
         <version>4.0.5</version>
         <type>xml</type>
         <scope>runtime</scope> 
     </dependency>
</dependencies>

<build>    
    <pluginManagement>
        <plugins>
         <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-resources-plugin</artifactId>
            <version>2.7</version>
            <executions>
                <execution>
                    <id>process-resources</id>
                    <goals>
                        <goal>resources</goal>
                    </goals>
                </execution>
            </executions>
        </plugin>  
        </plugins> 
    </pluginManagement>  


    <plugins>
        <plugin>
            <groupId>org.apache.karaf.tooling</groupId>
            <artifactId>karaf-maven-plugin</artifactId>
            <version>4.0.5</version>
            <extensions>true</extensions>
            <configuration>

                <startupFeatures></startupFeatures>
                <bootFeatures>
                  <feature>standard</feature>
                  <feature>management</feature>
                  <feature>jms</feature>

                </bootFeatures>
                <installedFeatures>
                </installedFeatures>
            </configuration>
        </plugin>
    </plugins>

</build>

如有任何建议,我们将不胜感激。

共有1个答案

荆炳
2023-03-14

您可能缺少执行设置:

<executions>
  <execution>
    <phase>compile</phase>
      <goals>
        <goal>assembly</goal>
      </goals>
    </execution>
    <execution>
      <id>package</id>
      <goals>
        <goal>archive</goal>
      </goals>
    </execution>
</executions>
 类似资料:
  • 问题内容: 生成成功后,报告将成功生成,但是如果有任何失败的情况导致生成失败,则不会生成报告。 checkBuildResult 已设置为 false pom文件插件 跑步班如下 问题答案: 将以下配置添加到确定的fire插件。失败后,它不会停止执行Maven。然后它将生成报告。 如下面的现有配置所示。

  • 问题内容: 当前,我有一个效率低下的同步生成器,该生成器按顺序发出许多HTTP请求并产生结果。我想使用请求并使其并行化,从而加快此生成器的速度,但我想将其保留为普通生成器(而不是PEP 525异步生成器 ),以便不需要调用它的非异步代码被修改。如何创建这样的生成器? 问题答案: ,目前几乎没有文献记录,它接受一个协程或期货的迭代,并按输入期货的完成顺序返回一个迭代的期货。 通常 ,您可以从函数内部

  • 关于警告: 我尝试在不使用的情况下构建它。它构建了相同的

  • 我尝试用maven (mvn包)生成一个. zip文件,并希望在zip中也有一个清单文件。jar文件本身确实可以工作。我试图用maven jar插件生成一个清单文件,但它不起作用。我需要做些别的事情来得到一个清单文件吗,或者使用这个插件就足够了?父pom(我展示的父POM的父POM)有maven汇编插件。(我对maven完全陌生) pom.xml父 pom 的文件: pom。模块的xml文件:

  • 问题内容: 我在命令行上使用Maven,我的构建需要一段时间才能完成(1-2分钟)。我正在寻找一种可能性,可以在构建完成时挂入构建的END并触发特定命令(通过ant等启动程序),具体取决于构建的结果(成功/失败)。 我的目标是我的计算机只播放声音(一个用于成功构建,另一个用于失败构建),因此我会注意到我的构建已完成。 我能意识到吗?我想可能会有Ant,但我希望没有Ant也能做到。 问题答案: 这应

  • 问题内容: 手指交叉可以帮助我! 我正在使用SmartSprites将目标网页上的PNG合并为一个,以便更快地加载。 SmartSprite将检查您的CSS文件,生成CSS Sprite图像,并创建一个新的CSS文件,该文件将使用此Sprite图像而不是原始图像。我想要做的是在我的Maven WAR构建期间自动用SmartSprite替换原始CSS文件。 所以这就是我想发生的事情: SmartSp