---
schema_version: "1"
id: 84e1e1382814847af4fa3ef82495dd9b359326eaf57ebc84c63fd89dc7cc0174
title: Maven クライアントを使用した Exchange へのカスタムポリシーのアップロードおよびアセットのパブリッシュ
collection: mulesoft
version: current
locale: ja-jp
portal_url: https://docs.salesforce.com/mulesoft/current/ja-jp/private-cloud/4.1/custom-policies.md
canonical_url: https://docs.mulesoft.com/jp/private-cloud/4.1/custom-policies
source_site: docs.mulesoft.com
content_type: documentation
content_hash: 87158b8fc08cdf432d9f610b0fb5649432b6f260df8423f4bf5c35d363094880
description: MuleSoft Documentation Site
release: "4.1"
latest: false
---
# Maven クライアントを使用した Exchange へのカスタムポリシーのアップロードおよびアセットのパブリッシュ

Anypoint Platform Private Cloud Edition (Anypoint Platform PCE) と Anypoint Platform のクラウドバージョンの間には違いがあり、Maven クライアントを使用して Anypoint Exchange にカスタムポリシーをアップロードしてアセットをパブリッシュするときに考慮する必要があります。

Anypoint Platform のクラウドバージョンについての詳細は、以下を参照してください。

- [カスタムポリシーの開発の開始](https://docs.mulesoft.com/jp/mule-gateway/policies-custom-getting-started)
- [カスタムポリシーのアップロード](#api-manager::custom-policy-uploading-to-exchange.adoc)
- [Maven Facade API](https://anypoint.mulesoft.com/exchange/portals/anypoint-platform/f1e97bc6-315a-4490-82a7-23abe036327a.anypoint-platform/exchange-maven-facade-api-http/)

Anypoint Platform PCE の場合は、次の手順を実行します。

1. `settings.xml`​ ファイルで server セクションおよび repository セクションを追加し、プロジェクトのアーキタイプをセットアップします。
    
    次のスニペットでは、関連するセクションを示しています。
    
    ```xml
        ...
        <server>
           <id>apce-repository</id>
           <username>myusername</username>
           <password>mypassword</password>
        </server>
        ...
        <repository>
           <id>apce-repository</id>
           <name>Anypoint PCE Repository</name>
           <url>https://${ANYPOINT_DNS}/exchange/maven</url>
        </repository>
        ...
    ```
    
    次の例で、${​ANYPOINT\_DNS​} は Anypoint Platform PCE の DNS に設定されます。​`username`​ および ​`password`​ はインストールに対応する必要があります。
2. アーキタイプを生成します。
    
    標準的なプロセス​[「カスタムポリシーの開発の開始」](https://docs.mulesoft.com/jp/mule-gateway/policies-custom-getting-started)​に従ってください。 次に例を示します。
    
    mvn -Parchetype-repository archetype:generate \\
    -DarchetypeGroupId=org.mule.tools \\
    -DarchetypeArtifactId=api-gateway-custom-policy-archetype \\
    -DarchetypeVersion=1.0.0 \\
    -DgroupId=${orgId} \\
    -DartifactId=${policyName} \\
    -Dversion=1.0.0-SNAPSHOT \\
    -Dpackage=mule-policy
3. `pom.xml`​ ファイルの ​`exchange.url`​ を置き換えます。 デフォルトでは、​`exchange.url`​ は Anypoint Platform のクラウドバージョンを参照します。 `maven.anypoint.mulesoft.com`​ は Anypoint Platform PCE エンドポイントを参照する必要があります。
    
    <exchange.url>https://${ANYPOINT\_DNS}/exchange/maven/api/v1/organizations/${orgId}/maven</exchange.url>
    
    `repositoryId`​ は ​`settings.xml`​ ファイルで Maven について設定した ID に一致する必要があります。
4. カスタムポリシーをパッケージ化します。
    
    [「カスタムポリシーのパッケージ化」](https://docs.mulesoft.com/jp/mule-gateway/policies-custom-package)​の Anypoint Platform のクラウドバージョンに関する説明と同じ手順を実行します。
5. カスタムポリシーをアップロードします。
    
    [「Exchange へのカスタムポリシーのアップロード」](#api-manager::custom-policy-uploading-to-exchange.adoc)​の Anypoint Platform のクラウドバージョンに関する説明と同じ手順を実行します。
    
    次のようなエラーが発生した場合:
    
    \[ERROR\] Failed to execute goal org.apache.maven.plugins:maven-deploy-plugin:2.8.2:deploy (default-deploy) on project ${policyName}:
    Failed to retrieve remote metadata ${groupId}:${policyName}:1.0.0-SNAPSHOT/maven-metadata.xml: Could not transfer metadata ${orgId}:${policyName}:1.0.0-SNAPSHOT/maven-metadata.xml from/to exchange-server (https://${ANYPOINT\_DNS}/exchange/maven/api/v1/organizations/${orgId}/maven): PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target -> \[Help 1\]
    
    プラットフォームの証明書がローカル Maven によって信頼されていないことを意味します。解決策としては、次の例のように、Maven が実行されている環境で証明書を信頼します。
    
    keytool -printcert -sslserver ${ANYPOINT\_DNS}:443 -rfc > /tmp/anypoint.crt
    keytool -importcert -alias my-company.com -keystore /etc/ssl/certs/java/cacerts -storepass changeit -file /tmp/anypoint.crt
    
    前の例で、$​ANYPOINT\_DNS​ は Anypoint Platform PCE の DNS に設定されます。場所およびパスワードを JVM のトラストストアに置き換えます。
6. `https://${ANYPOINT_DNS}/exchange/?type=policy`​ または ​`https://${ANYPOINT_DNS}/exchange/${orgID}/${artifactId}/`​ を直接参照して、ポリシーがアップロードされたことを確認してください。
    
    Mule 4 以降によって管理される API の場合、ポリシーは ​**\[Apply Policy (ポリシーを適用)\]**​ ダイアログに表示されます。

## [](#関連情報)関連情報

- [Anypoint Platform PCE の管理](https://docs.mulesoft.com/jp/private-cloud/4.1/operating-about)