--- title: Spring Enterpriseレポジトリアクセス方法 tags: ["Spring Enterprise", "Tanzu", "Spring Boot", "Java"] categories: ["Programming", "Java", "org", "springframework"] date: 2025-07-11T06:27:15Z updated: 2025-07-11T06:27:15Z --- VMware Tanzu SpringあるいはVMware Tanzu Platform for Cloud Foundry (formerly Tanzu Application Service)をご購入のお客様は Spring Enterpriseのプライベートレポジトリにアクセスできます。 Spring Enterpriseは、Spring Framework、Spring Boot、Springなどの長期商用サポートを提供する製品です。 例えば、本稿執筆時点ではOSSとしてはサポート切れのSpring Boot 2.7(2.7.18が最終OSSリリースバージョン)は、2.7.27までリリースされています。 Spring Enterpriseで提供されている各プロジェクトの詳細は次のリンクを参照してください。 https://enterprise.spring.io/projects Spring EnterpriseのリポジトリをMavenで使用するための設定方法を説明します。ここでは直接レポジトリにアクセスする方法を紹介しますが、 Air-gapped環境での使用方法については、JFrog ArtifactoryやSonatype Nexusなどにコピーする必要があります。[別途ドキュメント](https://techdocs.broadcom.com/us/en/vmware-tanzu/spring/tanzu-spring/commercial/spring-tanzu/guide-artifact-repository-administrators.html)を参照してください。 ### Spring Enterpriseのアクセストークンの取得 Broadcom Supportにログインして、[Spring Enterprise](https://support.broadcom.com/group/ecx/productdownloads?subfamily=Spring%20Enterprise%20Subscription)のページからMavenレポジトリのトークンを取得します。 "Token Access"をクリックし、緑色の"Token Download"ボタンをクリックします。 ![image](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1852/143d32a8-5553-41fa-a78e-615fe13726a7.png) 表示されたダイアログをスクロールしてAccess Tokenをコピーします。`eyJ...`という文字列がAccess Tokenです。囲み文字のシングルクオートをコピーしないように気をつけてください。 ![image](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1852/f7b80415-d973-49d5-b275-0989db2b52d9.png) このページにアクセスできない場合は、ライセンスが有効化されていない可能性があるため、 担当のアカウントチームに連絡してライセンスの有効化を依頼してください。 ### Spring EnterpriseのリポジトリをMavenで使用するための設定 ホームディレクトリ直下の`.m2`ディレクトリに`settings.xml`を作成し、以下の内容を記述してください。 `BC_SUPPORT_USERNAME`と`BC_SUPPORT_ACCESS_TOKEN`は、Broadcomのサポートアカウントのユーザー名(メールアドレス)と上記手順でコピーしたアクセストークンに置き換えてください。 これにより、Tanzu Spring Enterpriseのリポジトリにアクセスできるようになります。 ```xml tanzu-spring-release BC_SUPPORT_USERNAME BC_SUPPORT_ACCESS_TOKEN tanzu-spring-release true tanzu-spring-release Spring Enterprise Supported Releases https://packages.broadcom.com/artifactory/spring-enterprise false tanzu-spring-release Spring Enterprise Supported Releases https://packages.broadcom.com/artifactory/spring-enterprise false ``` ### 動作確認 https://start.spring.io/#!type=maven-project&language=java&platformVersion=3.4.7&packaging=jar&jvmVersion=21&groupId=com.example&artifactId=demo&name=demo&description=Demo%20project%20for%20Spring%20Boot&packageName=com.example.demo&dependencies=web から雛形プロジェクトをダウンロードします。 ![image](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1852/99132f46-5df4-46cd-b180-cb56e467da1a.png) "Generate"ボタンをクリックして、プロジェクトをダウンロードします。 demo.zipがダウンロードされるので、Zipを展開し、展開されたディレクトリにターミナルで移動します。 ```bash unzip demo.zip cd demo ``` `pom.xml`を開いてSpring BootのバージョンをSpring Enterpriseのバージョンに変更します。次の例ではSpring Boot 3.4.7を使用していますが、2.7.27に変更します。 Before ```xml org.springframework.boot spring-boot-starter-parent 3.4.7 ``` After ```xml org.springframework.boot spring-boot-starter-parent 2.7.27 ``` Mac/Linuxの場合は、次のコマンドを実行してMavenプロジェクトをコンパイルします。 ```bash ./mvnw clean compile ``` Windowsの場合は、次のコマンドでMavenプロジェクトをコンパイルします。 ```bash mvnw.cmd clean compile ``` 次のように`https://packages.broadcom.com/artifactory/spring-enterprise`からファイルがダウンロードできればOKです。 ![image](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1852/b542dfcb-af7d-4729-90ea-376ac286d9d7.png) プロジェクトで利用されているSpringのバージョンを確認したければ次のコマンドを実行してください。 Mac/Linuxの場合 ```bash ./mvnw dependency:tree ``` Windowsの場合 ```bash mvnw.cmd dependency:tree ``` 以下の例ではSpring Boot 2.7.27及びSpring Framework 5.3.43が使用されていることが確認できます。 ``` [INFO] Scanning for projects... [INFO] [INFO] --------------------------< com.example:demo >-------------------------- [INFO] Building demo 0.0.1-SNAPSHOT [INFO] from pom.xml [INFO] --------------------------------[ jar ]--------------------------------- [INFO] [INFO] --- dependency:3.3.0:tree (default-cli) @ demo --- [INFO] com.example:demo:jar:0.0.1-SNAPSHOT [INFO] +- org.springframework.boot:spring-boot-starter-web:jar:2.7.27:compile [INFO] | +- org.springframework.boot:spring-boot-starter:jar:2.7.27:compile [INFO] | | +- org.springframework.boot:spring-boot:jar:2.7.27:compile [INFO] | | +- org.springframework.boot:spring-boot-autoconfigure:jar:2.7.27:compile [INFO] | | +- org.springframework.boot:spring-boot-starter-logging:jar:2.7.27:compile [INFO] | | | +- ch.qos.logback:logback-classic:jar:1.2.13:compile [INFO] | | | | \- ch.qos.logback:logback-core:jar:1.2.13:compile [INFO] | | | +- org.apache.logging.log4j:log4j-to-slf4j:jar:2.17.2:compile [INFO] | | | | \- org.apache.logging.log4j:log4j-api:jar:2.17.2:compile [INFO] | | | \- org.slf4j:jul-to-slf4j:jar:1.7.36:compile [INFO] | | +- jakarta.annotation:jakarta.annotation-api:jar:1.3.5:compile [INFO] | | \- org.yaml:snakeyaml:jar:1.30:compile [INFO] | +- org.springframework.boot:spring-boot-starter-json:jar:2.7.27:compile [INFO] | | +- com.fasterxml.jackson.core:jackson-databind:jar:2.13.5:compile [INFO] | | | +- com.fasterxml.jackson.core:jackson-annotations:jar:2.13.5:compile [INFO] | | | \- com.fasterxml.jackson.core:jackson-core:jar:2.13.5:compile [INFO] | | +- com.fasterxml.jackson.datatype:jackson-datatype-jdk8:jar:2.13.5:compile [INFO] | | +- com.fasterxml.jackson.datatype:jackson-datatype-jsr310:jar:2.13.5:compile [INFO] | | \- com.fasterxml.jackson.module:jackson-module-parameter-names:jar:2.13.5:compile [INFO] | +- org.springframework.boot:spring-boot-starter-tomcat:jar:2.7.27:compile [INFO] | | +- org.apache.tomcat.embed:tomcat-embed-core:jar:9.0.106:compile [INFO] | | +- org.apache.tomcat.embed:tomcat-embed-el:jar:9.0.106:compile [INFO] | | \- org.apache.tomcat.embed:tomcat-embed-websocket:jar:9.0.106:compile [INFO] | +- org.springframework:spring-web:jar:5.3.43:compile [INFO] | | \- org.springframework:spring-beans:jar:5.3.43:compile [INFO] | \- org.springframework:spring-webmvc:jar:5.3.43:compile [INFO] | +- org.springframework:spring-aop:jar:5.3.43:compile [INFO] | +- org.springframework:spring-context:jar:5.3.43:compile [INFO] | \- org.springframework:spring-expression:jar:5.3.43:compile [INFO] \- org.springframework.boot:spring-boot-starter-test:jar:2.7.27:test [INFO] +- org.springframework.boot:spring-boot-test:jar:2.7.27:test [INFO] +- org.springframework.boot:spring-boot-test-autoconfigure:jar:2.7.27:test [INFO] +- com.jayway.jsonpath:json-path:jar:2.7.0:test [INFO] | +- net.minidev:json-smart:jar:2.4.11:test [INFO] | | \- net.minidev:accessors-smart:jar:2.4.11:test [INFO] | | \- org.ow2.asm:asm:jar:9.3:test [INFO] | \- org.slf4j:slf4j-api:jar:1.7.36:compile [INFO] +- jakarta.xml.bind:jakarta.xml.bind-api:jar:2.3.3:test [INFO] | \- jakarta.activation:jakarta.activation-api:jar:1.2.2:test [INFO] +- org.assertj:assertj-core:jar:3.22.0:test [INFO] +- org.hamcrest:hamcrest:jar:2.2:test [INFO] +- org.junit.jupiter:junit-jupiter:jar:5.8.2:test [INFO] | +- org.junit.jupiter:junit-jupiter-api:jar:5.8.2:test [INFO] | | +- org.opentest4j:opentest4j:jar:1.2.0:test [INFO] | | +- org.junit.platform:junit-platform-commons:jar:1.8.2:test [INFO] | | \- org.apiguardian:apiguardian-api:jar:1.1.2:test [INFO] | +- org.junit.jupiter:junit-jupiter-params:jar:5.8.2:test [INFO] | \- org.junit.jupiter:junit-jupiter-engine:jar:5.8.2:test [INFO] | \- org.junit.platform:junit-platform-engine:jar:1.8.2:test [INFO] +- org.mockito:mockito-core:jar:4.5.1:test [INFO] | +- net.bytebuddy:byte-buddy:jar:1.12.23:test [INFO] | +- net.bytebuddy:byte-buddy-agent:jar:1.12.23:test [INFO] | \- org.objenesis:objenesis:jar:3.2:test [INFO] +- org.mockito:mockito-junit-jupiter:jar:4.5.1:test [INFO] +- org.skyscreamer:jsonassert:jar:1.5.3:test [INFO] | \- com.vaadin.external.google:android-json:jar:0.0.20131108.vaadin1:test [INFO] +- org.springframework:spring-core:jar:5.3.43:compile [INFO] | \- org.springframework:spring-jcl:jar:5.3.43:compile [INFO] +- org.springframework:spring-test:jar:5.3.43:test [INFO] \- org.xmlunit:xmlunit-core:jar:2.9.1:test [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 0.424 s [INFO] Finished at: 2025-07-11T14:23:00+09:00 [INFO] ------------------------------------------------------------------------ ```