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

如何检查在阶段期间调用maven目标

梁宏才
2023-03-14

我配置了一些插件目标,以便在构建生命周期(maven android应用程序)的某些阶段执行。但是我认为我在配置插件的过程中犯了一个错误,我想确保他们真的调用了。我找到了这个命令,它将打印所有生命周期阶段和目标:mvn help:description-dcmd=install,但它没有显示我配置的目标。因此我有两个请求:

>

  • MVN帮助:description-dcmd=install命令是否显示我在 / / / / pom标记中配置的目标?

    如何确保在阶段中调用目标和在构建生命周期中调用的阶段?

            <plugin>
                <groupId>com.jayway.maven.plugins.android.generation2</groupId>
                <artifactId>android-maven-plugin</artifactId>
                <version>3.2.0</version>
                <extensions>true</extensions>
                <configuration>
                    <sdk>
                        <platform>8</platform>
                    </sdk>
                    <emulator>
                        <avd>2.3.3_API-10</avd>
                    </emulator>
                    <undeployBeforeDeploy>true</undeployBeforeDeploy>
                    <assetsDirectory>${project.build.directory}/filtered-assets</assetsDirectory>
                    <androidManifestFile>${project.build.directory}/filtered-manifest/AndroidManifest.xml</androidManifestFile>
                    <zipalign>
                        <skip>false</skip>
                        <verbose>${build.verbosity}</verbose>
                        <inputApk>${project.build.directory}/${project.artifactId}-${build.version.name}.apk</inputApk>
                        <outputApk>${project.build.directory}/${project.artifactId}-${build.version.name}-aligned.apk</outputApk>
                    </zipalign>
                </configuration>
                <executions>
                    <execution>
                        <id>zipalign</id>
                        <phase>package</phase>
                        <goals>
                            <goal>zipalign</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
    
  • 共有1个答案

    仲学真
    2023-03-14

    您可以看到maven中的目标是在日志中调用的。对于使用zipalign的情况,您可以看到例如:

    [INFO] --- android-maven-plugin:3.5.0:zipalign (alignApk) @ androidclientlight ---
    [INFO] Running command: C:\Eclipse\Android\android-sdk-windows_r12\tools\zipalign.exe
    [INFO] with parameters: [-v, -f, 4, 
    

    如果跳过此操作,您将看到:

    [INFO] --- android-maven-plugin:3.5.0:zipalign (alignApk) @ androidclientlight ---
    [INFO] Skipping zipalign
    

    提示,不要忘记在zipalign配置中添加标志“false”。

          <zipalign>
            <skip>false</skip>
            <verbose>true</verbose>
            <inputApk>${project.build.directory}/${project.artifactId}-${project.version}.apk</inputApk>
            <outputApk>${project.build.directory}/${project.artifactId}-release-v${project.version}.apk</outputApk>
          </zipalign>
    
     类似资料:
    • 我已经用maven创建了一个java项目。在我的项目(src/main/resources下)中,有一些资源文件我想复制到目标/类中。 我在pom xml中添加了以下行: 当我运行mvn资源时:通过命令行获取的资源文件正在复制到目标/类中(因此生命周期中的资源阶段正在工作)。然而,当我在cmd中输入mvn install:install时,资源文件并没有被复制到目标/类中。 我得到: 生命周期中的

    • 在Spring应用程序中,可以检索所有(?)带有。当然,这只有在创建了所有bean之后才有可能。 所以,如果我在Bean的构造函数中调用这个方法,我必须很幸运,成为最后一个被创建的Bean,能够访问所有的Bean。 就我对SpringBean生命周期的理解而言,在初始化Bean之前,有一个创建BeanDefinitions的阶段。 如何在Bean的构造函数中检索所有已创建的Bean定义? 我还可以

    • 因此,我希望保存片段的活动在onResume()暂停,直到调用onMapReadyCallback,这样我就可以保证创建了GoogleMap对象,并且可以在活动生命周期中继续。但是,如果我在活动的线程(主线程)中使用任何锁或屏障同步器,线程将阻塞,不会接收任何回调,因此将永远等待。 我试图使用一个对象来实现onMapReadyCallback,并将其放在另一个线程中,但是根据文档,我必须在主线程中

    • maven目标和阶段之间的区别/联系是什么? 另一个说: 您不能调用生命周期阶段本身,但可以调用与生命周期阶段绑定的插件的目标。

    • Maven的默认目标是构建。如果我想将我的插件添加到Resources:TestResources阶段,@mojo注释必须是什么,以及我的插件的pom表示应该是什么样子?

    • 我正在尝试运行一些Selenium测试,但将jetty的启动附加到maven的预集成测试阶段是行不通的。因此,我试图调查这个问题,似乎总体而言,Maven没有在我指定的阶段执行我的目标。 我找到了这个例子并复制了它。我创建了一个插件,当我显式调用它时,它运行良好。但是当我尝试将其附加到验证阶段并运行mvn验证时,我没有看到“你好!!!”输出它只是向我展示了构建成功,而没有调用howdy world