2016-09-21 7 views
3

、それはAndroid StudioのGradleで依存関係を `runtime`に移動する必要がありますか?アンドロイドStudioで<a href="https://github.com/nebula-plugins/gradle-lint-plugin" rel="nofollow">gradle-lint-plugin</a>を使用して

:lintGradle 

This project contains lint violations. A complete listing of the 
violations follows. Because none were serious, the build's overall 
status was unaffected. 

this dependency should be moved to the runtime configuration since it 
has no classes warning unused-dependency     
app/build.gradle:43 compile 'com.android.support:appcompat-v7:24.1.0' 

this dependency should be moved to the runtime configuration since it 
has no classes warning unused-dependency     
app/build.gradle:44 compile 'com.android.support:design:24.1.0' 

this dependency should be moved to the runtime configuration since it 
has no classes warning unused-dependency     
app/build.gradle:45 compile 'com.android.support:cardview-v7:24.1.0' 

this dependency should be moved to the runtime configuration since it 
has no classes warning unused-dependency     
app/build.gradle:52 compile 
'com.github.gigamole.arcprogressstackview:library:+' 

this dependency should be moved to the runtime configuration since it 
has no classes warning unused-dependency     
app/build.gradle:53 compile 'com.github.dexafree:materiallist:3.2.1' 

this dependency should be moved to the runtime configuration since it 
has no classes warning unused-dependency     
app/build.gradle:54 compile 'com.android.volley:volley:1.0.0' 

this dependency should be moved to the runtime configuration since it 
has no classes warning unused-dependency     
app/build.gradle:55 compile 'com.cocosw:bottomsheet:[email protected]' 

this dependency should be moved to the runtime configuration since it 
has no classes warning unused-dependency     
app/build.gradle:57 compile 'com.android.support:support-v4:+' 

this dependency should be moved to the runtime configuration since it 
has no classes warning unused-dependency     
app/build.gradle:58 compile 'com.github.shem8:material-login:1.4.0' 

this dependency should be moved to the runtime configuration since it 
has no classes warning unused-dependency     
app/build.gradle:64 
compile('com.github.ozodrukh:CircularReveal:[email protected]') { 
    transitive = true; } 

this dependency should be moved to the runtime configuration since it 
has no classes warning unused-dependency     
app/build.gradle:74 compile 'com.github.rey5137:material:1.2.4' 

? app/build.gradle: 11 problems (0 errors, 11 warnings) 

To apply fixes automatically, run fixGradleLint, review, and commit 
the changes. 


BUILD SUCCESSFUL 

は私がアドバイスを取る必要があることをほのめかしますか?それらの依存関係がruntimeにある場合、すべての依存関係のwiki/docがそのようなことを言っておらず、従属関係をcompileに置くよう訴えているのはなぜですか?

編集:言い換えれば、をのようにruntimeに変更してみてください。しかし、Androidスタジオのヒントは

Error:Could not find method runtime() for arguments 
[com.android.support:appcompat-v7:24.1.0] on object of type 
org.gradle.api.internal.artifacts.dsl.dependencies.DefaultDependencyHandler. 

Please install the Android Support Repository from the Android SDK 
Manager. <a href="openAndroidSdkManager">Open Android SDK Manager</a> 

だから何が問題なのですか?

答えて

0

コンパイルに必要な依存関係をcompileに入れる必要があります。これにはソースで直接使用するクラスが含まれます。

コンパイルには必要ないが実行時にはruntimeである必要がある依存関係は、コンパイル時のクラスパスでは使用できませんが、実行時に使用可能になります。

+0

更新をご覧ください。 – guo

+0

Hm、strange。たぶんあなたはあなたの 'build.gradle'を投稿するべきです – Vampire

1

私は例えば、apkruntimeためのアンドロイドであると考えている。:

apk 'com.android.support:appcompat-v7:24.1.0' 

一部がpackage

https://stackoverflow.com/a/28473873/360211

言うたぶん両方の仕​​事は、多分違いはありません、多分そこにあります。私は非常にungoogleable条件として知らない。

関連する問題