0

我在 Solaris 10 上使用 Maven 3.0.3。我使用的是 antrun exec 插件。如何找出实际正在运行的命令行语句?运行我的命令(旨在从 StarTeam 版本控制系统中签出代码)时,我收到了权限被拒绝错误,尽管我已验证我的用户具有正确的权限。我想运行 Maven 从 shell 运行的相同命令,以便我可以比较这两个命令。

以下是我的 pom.xml 文件中的相关部分……</p>

                    <plugin>
                            <artifactId>maven-antrun-plugin</artifactId>
                            <executions>
                                    <execution>
                                            <phase>verify</phase>
                                            <configuration>

                                                    <tasks> 

                                                            <!-- Backup CIRQUE_COMPLETE and freeze the backup label -->
                                                            <exec failonerror="true" executable="stcmd" dir="/opt/StarTeamCP_2009/bin/">
                                                                    <arg value="label" />
                                                                    <arg value="-p" />
                                                                    <arg value="user:@mydomain.com:49201/myco/myco/Technology/nna/mycoUSA/cirquedusoleil" />
                                                                    <arg value="-vl" />
                                                                    <arg value="CIRQUE_${env}_COMPLETE" />
                                                                    <arg value="-nl" />
                                                                    <arg value="CIRQUE_${env}_COMPLETE_`date +&quot;%Y%m%d-%T&quot;`" />
                                                                    <arg value="-f" />
                                                                    <arg value="-r" />
                                                            </exec>

                                                            <!-- Slide CIRQUE_COMPLETE label up to build label -->
                                                            <exec failonerror="true" executable="stcmd" dir="/opt/StarTeamCP_2009/bin/">
                                                                    <arg value="apply-label" />
                                                                    <arg value="-p" />
                                                                    <arg value="user:@mydomain.com:49201/myco/myco/Technology/nna/mycoUSA/cirquedusoleil" />
                                                                    <arg value="-vl" />
                                                                    <arg value="${env.BUILD_ID}" />
                                                                    <arg value="-lbl" />
                                                                    <arg value="CIRQUE_${env}_COMPLETE" />
                                                                    <arg value="-is" />
                                                                    <arg value="*" />
                                                            </exec>

                                                    </tasks>
                                            </configuration>
                                            <goals>
                                                    <goal>run</goal>
                                            </goals>
                                    </execution>
                            </executions>
                    </plugin>
4

2 回答 2

0

-X您可以使用该选项运行 maven 。这将为您提供更多(调试)信息,并且还将使用该-debug选项运行 ant。

于 2011-05-24T04:54:07.340 回答
0

使用 'exec' 前的 'chmod' 标签来保证执行命令的权限,如下:

<chmod file="/opt/StarTeamCP_2009/bin/stcmd" perm="a+x"/>

<exec failonerror="true" executable="stcmd" dir="/opt/StarTeamCP_2009/bin/">
  ...
</exec>
于 2021-02-07T09:44:06.143 回答