先日Alfresco Community 5.1.gでビルド環境を作る際にハマりポイントがあったので、備忘代わりにブログエントリをば。
バージョン番号が違う?
「Alfresco SDK 2.2でJARパッケージの拡張モジュールを作る」などのエントリを参考にしてalfresco-sdkベースのmavenビルド環境を作ったのですが、おなしな状況が発生しました。
pom.xmlの alfresco.version を 5.1.g(記事執筆現在の最新のGA版)として、 mvn integration-test -Prun でカスタムモジュールのビルドとテストサーバ起動を行いました。いざ http://localhost:8080/alfresco/ にアクセスしてみると、なんかバージョン番号がおかしい…なんと「Community - 5.2.0 (r128301-b8)」と表示されました。
|
念のためインストーラインストールの5.1.g(201605-GA)を確認すると「Community - 5.1.0 (r127059-b7)」と表示されるので、mavenビルド環境に何か問題がありそうです(なお、schema番号も10,003と10,001で異なります)。
原因と解決方法は…
Alfrescoのドキュメントをよく読んでみると、原因と解決方法が書いてありました。結論から言うと、alfresco.warのartifactIdが変わったことが原因でした。
Alfresco Documentationのこの記事によれば、Alfresco Community 5.1.e以降ではalfresco.warのartifactIdが旧来の"alfresco"から"alfresco-platform"に変わったようです。pom.xmlのpropertiesタグ内に <alfresco.repo.artifactId>alfresco-platform</alfresco.repo.artifactId> と追記することで対応できます。
<properties> <!-- The following are default values for data location and Alfresco Community version. Uncomment if you need to change (Note. current default version for Enterprise edition is 5.0.1) --> <alfresco.version>5.1.g</alfresco.version> <alfresco.repo.artifactId>alfresco-platform</alfresco.repo.artifactId> <!-- <alfresco.data.location>alf_data_dev</alfresco.data.location> --> <!-- This control the root logging level for all apps uncomment and change, defaults to WARN <app.log.root.level>WARN</app.log.root.level> --> <!-- Set the enviroment to use, this controls which properties will be picked in src/test/properties for embedded run, defaults to the 'local' environment. See SDK Parent POM for more info. <env>local</env> --> </properties>
pom.xmlの設定を上記のように変更してリビルドすると、以下のように5.1.gの適切なバージョン番号 が表示されるようになるかと思います。
5.1.gの場合の正しいバージョン番号はこれ |
5.1系、5.2系でalfresco-sdkを使って開発を進める際にはご注意ください。