Mule - 使用Maven运行错误项目

时间:2015-12-16 08:29:53

标签: maven mule anypoint-studio

尝试使用Anypoint Studio IDE与Maven一起运行项目。

但我在控制台中收到此错误:

[错误]无法在项目magento上执行目标:无法解析项目com.test的依赖项:magento:mule:1.0.0-SNAPSHOT:无法收集[com.mulesoft.muleesb:mule-core-的依赖项ee:jar:3.7.2(已提供),com.mulesoft.muleesb.modules:mule-module-spring-config-ee:jar:3.7.2(已提供),org.mule.transports:mule-transport-file: jar:3.7.2(已提供),org.mule.transports:mule-transport-http:jar:3.7.2(已提供),com.mulesoft.muleesb.transports:mule-transport-jdbc-ee:jar:3.7。 2(已提供),com.mulesoft.muleesb.transports:mule-transport-jms-ee:jar:3.7.2(已提供),org.mule.transports:mule-transport-vm:jar:3.7.2(已提供) ,org.mule.modules:mule-module-scripting:jar:3.7.2(已提供),org.mule.modules:mule-module-xml:jar:3.7.2(已提供),org.mule.tests:mule -tests-functional:jar:3.7.2(test),org.mule.modules:mule-module-http:jar:3.7.2(提供),org.mule.modules:mule-module-magento:jar:2.2 .0(编译),org.mule.modules:mule-module-json:jar:3.7.2(已提供)]:无法读取org.mule.modules的工件描述符:mule-module-validation:jar:3.7.2:找不到org.mule.extensions:mule-extensions:http://repo1.maven.org/maven2/中的pom:3.7.2缓存在本地存储库,在中心的更新间隔过去或强制更新之前,不会重新尝试解析 - > [帮助1] [错误] 这是我的pom.xml文件:

<properties>
    <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
    <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding>

    <mule.version>3.7.2</mule.version>
    <mule.tools.version>1.1</mule.tools.version>
</properties>

<build>
    <plugins>
        <plugin>
            <groupId>org.mule.tools.maven</groupId>
            <artifactId>mule-app-maven-plugin</artifactId>
            <version>${mule.tools.version}</version>
            <extensions>true</extensions>
            <configuration>
                <copyToAppsDirectory>true</copyToAppsDirectory>
            <inclusions>
                    <inclusion>
                        <groupId>org.mule.modules</groupId>
                        <artifactId>mule-module-magento</artifactId>
                    </inclusion>
                </inclusions>
            </configuration>
        </plugin>
        <plugin>
            <artifactId>maven-assembly-plugin</artifactId>
            <version>2.2.1</version>
            <configuration>
                <descriptorRefs>
                    <descriptorRef>project</descriptorRef>
                </descriptorRefs>
            </configuration>
        </plugin>
        <plugin>
            <groupId>org.codehaus.mojo</groupId>
            <artifactId>build-helper-maven-plugin</artifactId>
            <version>1.7</version>
            <executions>
                <execution>
                    <id>add-resource</id>
                    <phase>generate-resources</phase>
                    <goals>
                        <goal>add-resource</goal>
                    </goals>
                    <configuration>
                        <resources>
                            <resource>
                                <directory>src/main/app/</directory>
                            </resource>
                            <resource>
                                <directory>mappings/</directory>
                            </resource>
                        <resource>
                                <directory>src/main/api/</directory>
                            </resource>
                        </resources>
                    </configuration>
                </execution>
            </executions>
        </plugin>
    </plugins>
</build>

<!-- Mule Dependencies -->
<dependencies>
    <!-- Xml configuration -->
    <dependency>
        <groupId>com.mulesoft.muleesb</groupId>
        <artifactId>mule-core-ee</artifactId>
        <version>${mule.version}</version>
        <scope>provided</scope>
    </dependency>
    <!-- Xml configuration -->
    <dependency>
        <groupId>com.mulesoft.muleesb.modules</groupId>
        <artifactId>mule-module-spring-config-ee</artifactId>
        <version>${mule.version}</version>
        <scope>provided</scope>
    </dependency>
    <!-- Mule Transports -->
    <dependency>
        <groupId>org.mule.transports</groupId>
        <artifactId>mule-transport-file</artifactId>
        <version>${mule.version}</version>
        <scope>provided</scope>
    </dependency>
    <dependency>
        <groupId>org.mule.transports</groupId>
        <artifactId>mule-transport-http</artifactId>
        <version>${mule.version}</version>
        <scope>provided</scope>
    </dependency>
    <dependency>
        <groupId>com.mulesoft.muleesb.transports</groupId>
        <artifactId>mule-transport-jdbc-ee</artifactId>
        <version>${mule.version}</version>
        <scope>provided</scope>
    </dependency>
    <dependency>
        <groupId>com.mulesoft.muleesb.transports</groupId>
        <artifactId>mule-transport-jms-ee</artifactId>
        <version>${mule.version}</version>
        <scope>provided</scope>
    </dependency>
    <dependency>
        <groupId>org.mule.transports</groupId>
        <artifactId>mule-transport-vm</artifactId>
        <version>${mule.version}</version>
        <scope>provided</scope>
    </dependency>
    <!-- Mule Modules -->
    <dependency>
        <groupId>org.mule.modules</groupId>
        <artifactId>mule-module-scripting</artifactId>
        <version>${mule.version}</version>
        <scope>provided</scope>
    </dependency>
    <dependency>
        <groupId>org.mule.modules</groupId>
        <artifactId>mule-module-xml</artifactId>
        <version>${mule.version}</version>
        <scope>provided</scope>
    </dependency>
    <!-- for testing -->
    <dependency>
        <groupId>org.mule.tests</groupId>
        <artifactId>mule-tests-functional</artifactId>
        <version>${mule.version}</version>
        <scope>test</scope>
    </dependency>
<dependency>
        <groupId>org.mule.modules</groupId>
        <artifactId>mule-module-http</artifactId>
        <version>${mule.version}</version>
        <scope>provided</scope>
    </dependency>
<dependency>
        <groupId>org.mule.modules</groupId>
        <artifactId>mule-module-magento</artifactId>
        <version>2.2.0</version>
    </dependency>
<dependency>
        <groupId>org.mule.modules</groupId>
        <artifactId>mule-module-json</artifactId>
        <version>${mule.version}</version>
        <scope>provided</scope>
    </dependency>
</dependencies>

<repositories>
      <repository>
        <id>Central</id>
        <name>Central</name>
        <url>http://repo1.maven.org/maven2/</url>
        <layout>default</layout>
    </repository>
</repositories>
<pluginRepositories>
    <pluginRepository>
        <id>mulesoft-release</id>
        <name>mulesoft release repository</name>
        <layout>default</layout>
        <url>http://repository.mulesoft.org/releases/</url>
        <snapshots>
            <enabled>false</enabled>
        </snapshots>
    </pluginRepository>
</pluginRepositories>

任何想法? 我缺少什么?

3 个答案:

答案 0 :(得分:1)

我可以看到你有一个maven中心的存储库以及另一个用于mule插件的存储库。

尝试将以下存储库添加到new scjp2().go(1);

<repositories> ... </repositories>

再次尝试maven构建?

(使用this pom作为参考)

答案 1 :(得分:1)

问题是,版本3.7.2在开放的maven存储库中不是免费提供的。您必须拥有一个Mule-EE Mavenrepository,以获取版本为3.7.2的mule-module-validation.jar

一种解决方法,如果你想坚持当前的3.7.2并且无法访问Mule-EE仓库(你需要密码...),你可以通过以下方式下载3.7.0 jar手 - 例如从https://repository.mulesoft.org/nexus/content/repositories/releases/org/mule/modules/mule-module-validation/开始,并在本地maven-repository中手动创建一个3.7.2文件夹,复制3.7.0 jar并将其重命名为3.7.2。在这种情况下,应该只有很小的变化,并且机会是3.7.0像魅力一样运行3.7.2。

如果您想要投入生产,不建议这样做。您可以切换到Mule 3.7.0 CE,并且所有依赖项都应该是免费提供的,或者您从MuleSoft购买企业订阅。

答案 2 :(得分:0)

这就是我的所作所为:

  1. 已安装最新的CE(社区版)Mule Runtime。
  2. mule-project.xml中,将服务器运行时更​​改为Mule Server 3.8.1 CE
  3. 再次对项目进行了复制(删除之前的pom.xml后)。
  4. 使用新创建的pom.xml编译项目。
  5. 这成功了。