tohokuaikiのチラシの裏

技術的ネタとか。

プラグイン開発で使用するライブラリの依存性とかをpom.xmlで解決しようとしてハマった件

pom.xmlで使用するライブラリを追加する際に、どういうことか追加はできてmavenからダウンロードもするのだが、classが使えなくなってしまう。

Could not initialize a XXXXXXXXXX. Please add a XXXXXXXXX to your classpath along with preferably XXXX.jar

みたいなエラーが出る。

とりあえず、classpathにjarが無いって言われたのでclasspathに関する情報

ここでわかる。
http://localhost:1990/confluence/admin/classpath.action

pom.xmlに読み込むものを書くときの注意

Confluence内でもともと使っていたり、保持しているClassを使う時は注意が必要。
どうもPluginのpom.xmldependencyに追加した方との整合性が取れないようで、エラーが起こってしまう。

さらに・・・・

一度pom.xmlに書くと、それがtargetディレクトリに保存されてしまいpom.xmlから削除してもダメ。
target/classes
target/dependency-maven-plugin-markers
あたりにその残骸が残っていて、パッケージ化する際にjarに引き続き入れてしまうようだ。これは普通にatlas-runをし直してもダメ。atlas-cleanでtargetを削除して再度atlas-runをすると元に戻る。そんなことしなくてもいい方法が無いかな…と思うのだけど。。

ここにキャッシュがたまってるとか?

target/classesにコンパイル済みのJavaファイルが各ライブラリも合わせて存在していた。

なので、atlas-cli > pi する前に、 target/classses のファイルを削除しておくと良いみたい。

コンパイル(atlas-cli >pi)するたびにこの中身をクリーンしてくれるなら良いのだけどなー。

とりあえず、Confluenceのclasspathで読み込まれているものの一覧。

target/container/tomcat6x/cargo-confluence-home/webapps/confluence/WEB-INF/lib/は省略

  1. XmlSchema-1.1.jar
  2. analytics-api-2.28.jar
  3. antisamy-1.4.2-atlassian-13.jar
  4. antlr-2.7.7.jar
  5. antlr-runtime-3.4.jar
  6. aopalliance-1.0.jar
  7. applinks-api-4.0.4.jar
  8. applinks-host-4.0.4.jar
  9. applinks-spi-4.0.4.jar
  10. asm-1.5.3.jar
  11. aspectjweaver-1.6.0.jar
  12. atlassian-annotations-0.7.jar
  13. atlassian-bandana-3.1.jar
  14. atlassian-bonnie-6.0.jar
  15. atlassian-cache-api-0.1.jar
  16. atlassian-cache-memory-0.1.jar
  17. atlassian-config-0.19.jar
  18. atlassian-cookie-tools-2.0.jar
  19. atlassian-core-4.6.8.jar
  20. atlassian-embedded-crowd-atlassian-user-1.7-m6.jar
  21. atlassian-event-2.3.0.jar
  22. atlassian-extras-2.4.jar
  23. atlassian-gzipfilter-1.12.jar
  24. atlassian-hibernate2-extras-4.0.3.jar
  25. atlassian-html-encoder-1.4.jar
  26. atlassian-http-0.0.8.8.jar
  27. atlassian-image-consumer-1.0.1.jar
  28. atlassian-ip-3.1.jar
  29. atlassian-jdk-utilities-0.4.jar
  30. atlassian-johnson-0.10.jar
  31. atlassian-json-api-0.9.jar
  32. atlassian-mail-2.4.1.jar
  33. atlassian-paddle-5.jar
  34. atlassian-password-encoder-3.2.jar
  35. atlassian-plugins-core-3.0.7.jar
  36. atlassian-plugins-osgi-3.0.7.jar
  37. atlassian-plugins-osgi-events-3.0.7.jar
  38. atlassian-plugins-schema-3.0.7.jar
  39. atlassian-plugins-servlet-3.0.7.jar
  40. atlassian-plugins-spring-3.0.7.jar
  41. atlassian-plugins-webfragment-3.0.0-m9.jar
  42. atlassian-plugins-webresource-3.0.0-m24.jar
  43. atlassian-plugins-webresource-api-3.0.0-m24.jar
  44. atlassian-plugins-webresource-common-3.0.0.jar
  45. atlassian-profiling-1.8.2.jar
  46. atlassian-renderer-legacy-6.2.10.jar
  47. atlassian-secure-random-2.0.jar
  48. atlassian-secure-xml-3.1.4.jar
  49. atlassian-seraph-2.5.1.jar
  50. atlassian-spring-2.0.0.jar
  51. atlassian-spring-hibernate2-2.0.0.jar
  52. atlassian-spring-interceptor-adapter-spi-1.1.jar
  53. atlassian-trackback-0.10.jar
  54. atlassian-trusted-apps-core-2.5.2.jar
  55. atlassian-trusted-apps-seraph-integration-2.5.2.jar
  56. atlassian-user-3.0.jar
  57. atlassian-util-concurrent-2.4.1.jar
  58. atlassian-velocity-1.0.0.jar
  59. atlassian-xwork-10-1.13.jar
  60. atlassian-xwork-core-1.13.jar
  61. batik-css-1.7.jar
  62. batik-ext-1.7.jar
  63. batik-util-1.7.jar
  64. bcmail-jdk15on-1.49.jar
  65. bcpkix-jdk15on-1.49.jar
  66. bcprov-jdk15on-1.49.jar
  67. bndlib-1.43.0-atlassian-1.jar
  68. botocss-3.1-fakraemer-fork.jar
  69. bsf-2.3.0.jar
  70. c3p0-0.9.1.2.jar
  71. cglib-2.1_3.jar
  72. commons-beanutils-1.8.3.jar
  73. commons-codec-1.4.jar
  74. commons-collections-3.2.jar
  75. commons-digester-1.5.jar
  76. commons-discovery-0.2.jar
  77. commons-fileupload-1.2.2.jar
  78. commons-httpclient-3.1.jar
  79. commons-io-1.4.jar
  80. commons-jrcs-diff-0.1.7.jar
  81. commons-lang-2.6.jar
  82. commons-lang3-3.1.jar
  83. commons-logging-1.1.1.jar
  84. commons-pool-1.5.4.jar
  85. concurrent-1.3.4.jar
  86. confluence-5.3.1.jar
  87. confluence-bucket-5.3.1.jar
  88. confluence-cache-ehcache-5.3.1.jar
  89. confluence-compatibility-5.3.1.jar
  90. confluence-rpc-plugin-5.3.1.jar
  91. confluence-upgrade-5.3.1.jar
  92. crowd-api-2.7.0-rc2.jar
  93. crowd-core-2.7.0-rc2.jar
  94. crowd-events-2.7.0-rc2.jar
  95. crowd-integration-api-2.7.0-rc2.jar
  96. crowd-integration-client-common-2.7.0-rc2.jar
  97. crowd-integration-client-rest-2.7.0-rc2.jar
  98. crowd-integration-seraph25-2.7.0-rc2.jar
  99. crowd-ldap-2.7.0-rc2.jar
  100. crowd-password-encoders-2.7.0-rc2.jar
  101. crowd-persistence-2.7.0-rc2.jar
  102. crowd-persistence-file-2.7.0-rc2.jar
  103. crowd-remote-2.7.0-rc2.jar
  104. cssparser-0.9.5.jar
  105. daisydiff-1.1-atlassian-5.jar
  106. dom4j-1.4-full.jar
  107. dragonfly-api-1.1.jar
  108. dragonfly-core-1.1.jar
  109. dragonfly-spi-1.1.jar
  110. ehcache-2.7.2.jar
  111. embedded-crowd-api-2.7.0-rc2.jar
  112. embedded-crowd-core-2.7.0-rc2.jar
  113. embedded-crowd-spi-2.7.0-rc2.jar
  114. fontbox-1.7.1.jar
  115. fugue-1.1.jar
  116. gson-1.6.jar
  117. guava-10.0.1.jar
  118. hamcrest-core-1.3.RC2.jar
  119. hibernate-2.1.8-atlassian-19.jar
  120. hsqldb-2.3.0.jar
  121. icu4j-3.8.jar
  122. jai-core-1.1.3.jar
  123. jai_codec-1.1.3.jar
  124. jai_core-1.1.3.jar
  125. jakarta-regexp-1.4.jar
  126. jaxb-api-2.1.jar
  127. jaxb-impl-2.1.10.jar
  128. jcaptcha-all-1.0-RC6.jar
  129. jcip-annotations-1.0.jar
  130. jcommon-1.0.0.jar
  131. jdom-1.0.jar
  132. jempbox-1.7.1.jar
  133. jfreechart-1.0.0.jar
  134. joda-time-1.6.jar
  135. json-20070829.jar
  136. json-simple-1.1.1.jar
  137. jsoup-1.7.2.jar
  138. jsr305-1.3.9.jar
  139. jta-1.0.1B.jar
  140. jtds-1.2.2.jar
  141. jtidy-r8-20060801.jar
  142. jul-to-slf4j-1.6.4.jar
  143. junit-dep-4.10.jar
  144. jython-2.1-forked.jar
  145. ldaptemplate-1.0.1.jar
  146. log4j-1.2.15.jar
  147. lucene-analyzers-common-4.3.0.jar
  148. lucene-analyzers-kuromoji-4.3.0.jar
  149. lucene-core-4.3.0.jar
  150. lucene-highlighter-4.3.0.jar
  151. lucene-memory-4.3.0.jar
  152. lucene-misc-4.3.0.jar
  153. lucene-queries-4.3.0.jar
  154. lucene-queryparser-4.3.0.jar
  155. lucene-sandbox-4.3.0.jar
  156. lucene-upgrader-1.0-lucene36.jar
  157. mail-1.4.5.jar
  158. modz-detector-0.8.1.jar
  159. nekohtml-1.9.15.jar
  160. odmg-3.0.jar
  161. ognl-2.6.5-atlassian-2.jar
  162. org.apache.felix.framework-3.0.2.jar
  163. oro-2.0.8.jar
  164. oscache-2.2.jar
  165. oscore-2.2.7-atlassian-1.jar
  166. osuser-atl.user.jar
  167. package-scanner-0.7.7.jar
  168. pdfbox-1.7.1.jar
  169. postgresql-9.2-1002.jdbc4.jar
  170. propertyset-1.3-21Nov03.jar
  171. quartz-1.8.0.jar
  172. radeox-1.0b2-forked-22Apr2004.jar
  173. rome-1.0.jar
  174. runtime-20070801.jar
  175. sac-1.3.jar
  176. sal-api-2.10.4.jar
  177. sal-spi-2.10.4.jar
  178. sal-spring-2.10.4.jar
  179. sanselan-0.97-incubator.jar
  180. serializer-2.7.1.jar
  181. sitemesh-2.5-atlassian-6.jar
  182. slf4j-api-1.6.4.jar
  183. slf4j-log4j12-1.6.4.jar
  184. slide-2.1.jar
  185. soy-template-renderer-api-2.1.4.jar
  186. spring-aop-2.5.6.SEC02.jar
  187. spring-beans-2.5.6.SEC02.jar
  188. spring-context-2.5.6.SEC02.jar
  189. spring-context-support-2.5.6.SEC02.jar
  190. spring-core-2.5.6.SEC02.jar
  191. spring-hibernate2-2.5.6-atlassian-1.jar
  192. spring-jdbc-2.5.6.SEC02.jar
  193. spring-ldap-core-1.3.1.RELEASE.jar
  194. spring-orm-2.5.6.SEC02.jar
  195. spring-security-core-3.1.4.RELEASE.jar
  196. spring-tx-2.5.6.SEC02.jar
  197. spring-web-2.5.6.SEC02.jar
  198. stax-api-1.0-2.jar
  199. stax-utils-20040917.jar
  200. stringtemplate-3.2.1.jar
  201. urlrewritefilter-4.0.4.jar
  202. velocity-1.6.4-atlassian-1.jar
  203. velocity-htmlsafe-1.2-fixedscm.jar
  204. velocity-tools-view-1.1.jar
  205. webwork-2.1.5-atlassian-2.jar
  206. wsdl4j-1.6.1.jar
  207. wstx-asl-3.2.9-atlassian-1.jar
  208. xalan-2.7.1.jar
  209. xercesImpl-2.11.0.jar
  210. xfire-aegis-1.2.6.jar
  211. xfire-core-1.2.6.jar
  212. xmlrpc-2.0+xmlrpc61.1+sbfix.jar
  213. xmlrpc-supplementary-character-support-0.1.jar
  214. xpp3_min-1.1.3.4.O.jar
  215. xstream-1.1.1.jar
  216. xwork-1.0.3.6.jar