【问题标题】:How to configure MuleSoft with Maven?如何使用 Maven 配置 MuleSoft?
【发布时间】:2017-07-12 21:21:25
【问题描述】:

我正在尝试使用 Maven 创建我的第一个 MuleSoft 应用程序。我已使用 CMD 确认已安装 Java 和 Maven。我还配置了我的环境变量。

然后我打开 MuleSoft Anypoint Studio,创建第一个名为“mulesoft-sample”的我选择使用 Maven,并保留所有默认设置。

单击完成后,控制台开始下载一些文件 这些将继续下载,直到文件似乎接近尾声,它会引发错误:

在项目 mulesoft-sample 上运行 studio:studio 目标时出错

在控制台中,我看到下面列出的错误。

我最初尝试使用最新版本的 Maven (3.5.0)。但是,我发现一个视频教程说 3.3.9 是 MuleSoft 的验证版本。所以我想也许不支持最新版本,而是使用 3.3.9。但是,它仍然失败。我还尝试将环境变量更改为其他选项,例如直接进入 \bin,而不是完整的目录(在这里在黑暗中拍摄)。不幸的是,没有任何效果,我已经没有办法了。

谁能告诉我为什么会出现这些错误,而我的构建不会成功?如何纠正错误?

【问题讨论】:

  • java version "1.8.0_131" Java(TM) SE Runtime Environment (build 1.8.0_131-b11) Java HotSpot(TM) 64-Bit Server VM (build 25.131-b11, mixed mode) Apache Maven 3.3.9 (bb52d8502b132ec0a5a3f4c09453c07478323dc5; 2015-11-10T11:41:47-05:00) Maven 主页:C:\Program Files\apache-maven-3.3.9 Java 版本:1.8.0_131,供应商:Oracle Corporation Java 主页: C:\Program Files\Java\jdk1.8.0_131\jre 默认语言环境:en_US,平台编码:Cp1252 操作系统名称:“windows 10”,版本:“10.0”,arch:“amd64”,家族:“dos”
  • 我还设置了我的环境变量:JAVA_HOME --> C:\Program Files\Java\jdk1.8.0_131 M2_HOME --> C:\Program Files\apache-maven-3.3. 9 MAVEN_HOME --> C:\Program Files\apache-maven-3.3.9 Path --> %M2_HOME%\bin (已确认——这些是这些目录的正确位置)
  • 在控制台中,我看到以下内容:[错误] [错误] 处理 POM 时遇到一些问题:[错误] 无法解决的构建扩展:插件 org.mule.tools.maven:mule-无法解析 app-maven-plugin:1.2 或其依赖项之一:在指定路径 C:\Program Files\Java\jre1.8.0_131/.. 找不到工件 com.sun:tools:jar:1.5.0 /lib/tools.jar @ [ERROR] 未知包装:mule @ 第 9 行,第 16 列 @
  • [错误] 构建无法读取 1 个项目 -> [帮助 1] [错误] [错误] 项目 com.mycompany:mulesoft-sample:1.0.0-SNAPSHOT (C:\Users \chris\AnypointStudio\workspace\mulesoft-sample\pom.xml) 有 2 个错误 [错误] 无法解决的构建扩展:插件 org.mule.tools.maven:mule-app-maven-plugin:1.2 或其依赖项之一无法已解决:在指定路径 C:\Program Files\Java\jre1.8.0_131/../lib/tools.jar -> [Help 2] [ERROR] 找不到工件 com.sun:tools:jar:1.5.0 ] 未知包装:mule @ line 9, column 16 [ERROR]
  • 请编辑问题并在此处添加错误。请不要将 cmets 用作问题的一部分。其他用户应使用评论来请求澄清。

标签: java maven jar stack-trace mule-studio


【解决方案1】:

在 anypoint studio 中打开 windows>preferences.then 点击 java>installed JREs。并添加您的 Java JDK 文件夹并注意只有 JDK,而不是 JRE。然后你可以测试你的 maven

【讨论】:

    【解决方案2】:

    当正确的 java 没有指向 Anypoint Studio 时,会发生此错误。在工作室中导航到 windows > 首选项搜索 java.util.确保选择 jdk 而不是 jre 。如果问题仍然存在,请尝试更新您的 java 并重新安装 maven。

    【讨论】:

      【解决方案3】:
      • 在本地机器上下载最新的 maven,然后转到 anypoint studio windows->preferences->anypoint studio->maven

      • 提供maven路径并点击Test Maven configuration(绿色 如果正确提供了 URL,则获得复选标记)

      【讨论】:

        【解决方案4】:
        1. Mule Maven 插件配置。 1.1。使用 mule mule-app-maven-plugin 构建应用程序。
        <plugin>
                <groupId>org.mule.tools.maven</groupId>
                <artifactId>mule-app-maven-plugin</artifactId>
                <version>${mule.tools.version}</version>
                <extensions>true</extensions>
                <configuration>
                <copyToAppsDirectory>false</copyToAppsDirectory>
                </configuration>
            </plugin> 
        

        无需额外的 Mule Maven 插件。 这是在 AnyPoint (AP) Studio 上创建 Mule 项目时默认的 mule 插件集。

        1.2. Make sure you set flag copyToAppsDirectory to false. 
               This flag is set to true by default so you must change it manually.
        
        1. Maven 依赖插件配置。 2.1。现在我们需要添加一个插件来将生成的工件复制到 MULE_HOME/apps 目录,即将应用程序部署到独立的本地 mule 服务器。 我们将使用 maven-dependency-plugin。 只需在应用程序 pom.xml 中的 mule maven 插件部分之后添加这些插件。
                      <plugin>
                            <groupId>org.apache.maven.plugins</groupId>
                            <artifactId>maven-dependency-plugin</artifactId>
                            <version>2.10</version>
                            <executions>
                                <execution>
                                    <id>copy</id>
                                    <phase>deploy</phase>
                                    <goals>
                                        <goal>copy</goal>
                                    </goals>
                                    <configuration>
                                        <artifactItems>
                                            <artifactItem>
                                                <groupId>com.mule.support.ba</groupId>
                                                <artifactId>bonmarche-case-00145615</artifactId>
                                                <version>1.0.0</version>
                                                <type>zip</type>
                                                <overWrite>false</overWrite>
                                                <outputDirectory>C:/mule-home/apps</outputDirectory>
                                                <destFileName>bonmarche-case.zip</destFileName>
                                            </artifactItem>
                                        </artifactItems>
                                        <overWriteReleases>false</overWriteReleases>
                                        <overWriteSnapshots>true</overWriteSnapshots>
                                    </configuration>
                                </execution>
                            </executions>
                        </plugin>
        

        2.2。使用环境中的相应值更新标签内的属性(灰色)。 2.3.正如您在 2.1 中看到的,我们在 Maven 的“部署”阶段将部署配置到应用程序文件夹。您可以选择不同的阶段来复制工件,但它必须绑定到打包阶段之后的任何阶段,以便工件存在于存储库中。

        1. 禁用 Maven 部署插件的默认执行,以防止将生成的工件部署到外部存储库。这可能会根据您的项目需要进行更改。 在 maven-dependency-plugin 之后添加这个插件:
        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-deploy-plugin</artifactId>
            <version>2.8.2</version>
            <configuration>
                <skip>true</skip>
            </configuration>
        </plugin>
        
        1. 构建您的应用程序并验证生成的 ZIP 文件是否已复制到 MULE_HOME/apps 目录。 $> mvn clean deploy

        【讨论】:

          【解决方案5】:

          我遇到了同样的问题,并通过在首选项中将 JRE 更改为 JDK==>java==>Installed JRE 更改为 JDK 并重新启动任何点工作室来解决。这解决了我的问题。

          【讨论】:

            猜你喜欢
            • 2014-09-08
            • 1970-01-01
            • 1970-01-01
            • 2013-03-04
            • 1970-01-01
            • 2017-07-04
            • 2014-09-11
            • 1970-01-01
            • 2016-10-27
            相关资源
            最近更新 更多