Android Studio で twitter4j最新版をmaven から落とすプロジェクト方式 を試してみた
IDEAではよくある形式
android maven project での
の形式を試してみます
前提として
Android Studioの build.gradle どこまで弄れるか試してみた - exception think
の構成はできていること前提に進めます
ずばり通常のgradleファイルと同じ方式で可能です
repositories { //flatDir(dirs: file("$projectDir/libs")) mavenCentral() mavenRepo urls: 'http://twitter4j.org/maven2' //twitter4j のmaven Repo } dependencies { compile fileTree(dir: 'libs', includes: ['*.jar']) compile project(':yutori_lib') // library-projectを使っていないときは不要 compile "org.twitter4j:twitter4j-core:3.0.4-SNAPSHOT" //mavenからDLする記述 }
でビルドは通るようになりました。
で、ここからが問題。
IDEAってmavenベースのIDEなだけあって
- pom.xml でjarをDL
- 自動的に $HOME/.m2 のライブラリを認識
って機能があるのですが
gradleというかg系だと
- groovy
- $HOME/.groovy/grapes
- 他のGプロダクト
- $HOME/.ivy2
にライブラリをDLしてしまうんですね。
で見てみた感じ認識している気配はない。
で手動で設定しないと 補完効かない。。。
これ凄くもにょるので ivyidea のpluginを追加します
- パッケージの内容の表示で中の構成を表示します
- パッケージの中
- ivyideaプラグインをPluginsフォルダに入れます
- Pluginを有効にします
- ivyプラグインの設定でデフォルト設定にします
- use ivy default
- 無事 $HOME/.ivy フォルダ内の twitter4jが認識しました
結局のところ ASの最大の問題って
うーん今のところAndroid Studioでコンパイル/実行に際してエラーは出てないなぁ
@otack 実行に関してはbuild.gradle任せですね。ただeclipseと違い、コード保管用のdependency登録とbuild.gradleが連動してない点が eclipseユーザからは面くらわれるかも
2013-05-19 23:00:39 via hamoooooon to @otack
@kimukou2628 なるほど!忘れてしまいそうだ…
2013-05-19 23:02:13 via MetroTwit to @kimukou2628
プラグイン拡張システムがそこまで連動を許可するかどうかって話しかもなーとか思う