したがって、build.gradle(app)ファイルにいくつかの変更を加え、Android studioでこのエラーが表示されます(見やすくするために新しいタブで画像を開きます):
私のbuild.gradle(app)ファイル(これは編集されたファイルではありません。コードの新しい行を削除しましたが、まだ運/解決策はありません。):
Build.gradle(app)ファイルにいくつかの変更を加えるまで、すべてが順調に機能していましたが、それらの新しいコード行を削除しましたが、Android studioは引き続きエラーを発生させます。エラーはcompile 'com.google.Android.gms:play-services:8.3.0'に関連しています。指定されたフォルダ内のこれらのPNG画像を削除/名前変更しようとしましたが、プロジェクトを再構築すると、PNG画像が自動的にダウンロードされます。私のbuild.gradle(project)ファイルにはclasspath 'com.Android.tools.build:gradle:1.5.0'が含まれています。このエラーの原因と修正方法を知りたいですか?どうもありがとう。
私はちょうど同じ問題に遭遇しました。正確な問題の修正方法はわかりませんが、回避策が見つかりました。プロジェクトには深いファイルパス階層があります。プロジェクトを下位レベルから上に移動してみませんか?
例:C:\Projects\YourProject
これで問題は解決しました。
パスの問題のほとんどが発生する場所であるため、プロジェクトのビルドディレクトリを変更することもできます。ルートbuild.gradleファイル内
allprojects {
buildDir = "C:/tmp/${rootProject.name}/${project.name}"
repositories {
...
}
}
Android Studioは変更を認識し、プロジェクトビューに新しいビルドの場所を表示します。プロジェクト全体を移動するよりもはるかに簡単です。
編集
Windows 10 Insider Previewでは、長いファイルパスの制限を許可する機能が提供されるようになりましたが、現在、これらの制限は実際には、長いファイルパスのサポートを特に有効にしているアプリにのみアクセスできます。
現時点では、拡張パスが有効になっているこれらのアプリケーションは、Windowsストア経由でインストールされたアプリケーションのみのように見えます。
現時点では、Gradleはこのオプションを有効にして、拡張NTFSファイルパス長を利用することはできません。
プロジェクトを実際に移動する非常に堅実な代替手段として、ハードリンクを使用することをお勧めします。その構文は次のようになります
mklink /J C:\AndroidProjects\ProjectName C:\MyVeryVeryVeryVery…VeryVeryVeryLongPath\ProjectName
これで、C:\ AndroidProjects\ProjectNameでプロジェクトを操作し、プロジェクトのあるべき場所に変更を加えることができます。
ウラジミール・ディモフの答えに同意します。 Windowsではファイルパスが240文字未満であることが記載されているため、プロジェクトの短いパスを選択する必要があります。このリンクは私を助けます: http://www.feelzdroid.com/2016/01/Android-studio-error-file-path-too-long-windows.html
プロジェクトのパスを短くすることは、実際にはちょっとしたハックです。IvanNeesonの応答は、前進の道のようです。
Android Studioを使用できるほど幸運である場合、ファイルの長さに関する有用なエラーメッセージが表示されます。ただし、コマンドラインionic buildを実行しても同じ問題が発生した場合は、PNGファイルで何らかのクランチエラーが発生しているかどうかがわかります。
本当の問題は、common_google_signin_btn_text_light_normal_background.9.pngなどの贅沢なファイル名を持つGoogle Play Servicesであり、これはWindowsに対応していないだけです。 Androidビルド内にダンプし、コントロール外でplatform\Android\build\intermediates\exploded-aar\com.google.Android.gms\play-services-base\10.2.1 \へのパスが爆発しますres\drawable-xhdpi-v4\common_google_signin_btn_text_light_normal_background.9.png
Lodockの答えの追加として、同じ名前のプロジェクトがたくさんある場合は、プロジェクトパスでハッシュを使用できます。
import Java.security.MessageDigest
def hashString(String s){
MessageDigest.getInstance("SHA1").digest(s.bytes).encodeHex().toString()
}
allprojects {
buildDir = "C:/AB/${hashString(projectDir.getAbsolutePath())}"
}
たとえば、プロジェクトディレクトリをできる限り深く保持する必要があります。-D:/ AndroidWorkSpace/ProjectName
Android Studioは240文字のプロジェクトパスのみをサポートするため
ありがとう
これを見てください http://feelzdroid.com/2016/01/Android-studio-error-file-path-too-long-windows.html 解決策は単純すぎて、フォルダーのパスを240文字未満に保ちます。
パスに240個未満のチャーターがあることを確認してください
私はこの問題について別の経験をしました。最初にこのエラーが発生しましたが、同じディレクトリ内の以前のプロジェクトが開いていることに気付きました。これがパスです:
C:\ Users\koralis\Documents\extraction\Ex_Files_Android_App_Dev_LDS_Upd\Exercise Files\Ch01\01_06\ImageAssets
驚いたことに、そのgradleバージョンを「com.Android.tools.build:gradle:2.0.0」から「com.Android.tools.build:gradle:3.2.1」に更新しました
これで私の問題が解決しました。
私は同じ問題に直面していました、私のプロジェクトはCドライブにあり、それはより深いパスの場所にあります、私がプロジェクトを他のより低い深いパスの場所に移動しただけで動作します、あなたはプロジェクトの場所を変更するだけで深い場所の階層で。
Windowsユーザーの場合:
プロジェクトのルートフォルダーにネットワーク共有を作成して、そこにマップしたいと思うかもしれません。この手法はパス全体の長さを短縮しますが、変更されたファイルを検出するのが難しいため、Android Studioで問題が発生します。より良い解決策は、windows substコマンドを使用することです。問題を回避するためのスクリプトの例を次に示します。必要に応じて名前を微調整し、プロジェクトを指すように変更して、ディレクトリをインストールします。
ファイル:launchAS.cmd
subst P: "C:\private\Java42\ide\42g\workspaces\AndroidStudioProjects"
cd "C:\private\Java42\programs\Android-studio-base\bin"
start studio64.exe
上記のコマンドは、P:ドライブを作成し、プロジェクトルートフォルダーにマップします。これにより、プロジェクトファイルへの全体的なパスの長さが短くなり、パス名が長すぎる問題を軽減できます。プロジェクトを開くときに長いルート名を使用したように、P:\を使用します。
マッピングを削除するには、次のコマンドを使用します。subst P:/ d
私は同じように2つの繰り返しフォルダがあるときにこの問題を見つけました、
E:\project-one\project-one
そして、そのようなフォルダ名の長さが長い場合、
E:\project-one-with-very-big-name
この問題を回避するには、プロジェクトのフォルダーをシンプルかつ短くします。
NTFSジャンクションポイントを使用して、プロジェクトへの短いパスを作成できます。ジャンクションの詳細については、こちらをお読みください。 ハードリンクとジャンクション
ジャンクション(ソフトリンクとも呼ばれます)は、参照するストレージオブジェクトが個別のディレクトリであるという点でハードリンクと異なり、ジャンクションは同じコンピューター上の異なるローカルボリュームにあるディレクトリをリンクできます。それ以外の場合、ジャンクションはハードリンクと同じように動作します