Sollte ich hinzufügen .Idee/caches/build_file_checksums.ser zu .gitignore?

Ich aktualisierte mein Android Studio von 3.0.1 auf 3.1, und bemerkte eine fremde Datei in meinem bestehenden Projekt:

    .idea/caches/build_file_checksums.ser

Es nicht davon abhängig, ob Sie aktualisieren Sie das Android-Gradle-plugin, um die Letzte 3.1.0; einmal öffnete ich ein bestehendes Projekt in Android Studio 3.1, wird es automatisch die Datei erstellt build_file_checksums.ser, auch wenn ich hielt das Projekt für die Verwendung der vorherigen Version 3.0.1-plugin wie folgt.

    dependencies {
        classpath 'com.android.tools.build:gradle:3.0.1'
    }

Ich habe auch ein neues Projekt in Android Studio 3.1, und festgestellt, dass die Datei build_file_checksums.ser war von Anfang an erschaffen.

In der Zeit des Schreibens scheint es keine offiziellen Dokumente, die auf dieser. Ich würde es begrüßen, wenn jemand könnte es finden.


Bearbeitet werden:

Ich geprüft den Inhalt mit jdeserialize-1.2, als Samuel darauf hingewiesen, dass es scheint, einige system-Pfade.

$ java -jar ~/Downloads/jdeserialize-1.2.jar .idea/caches/build_file_checksums.ser 
read: com.android.tools.idea.gradle.project.ProjectBuildFileChecksums _h0x7e0002 = r_0x7e0000;  
////BEGIN stream content output
com.android.tools.idea.gradle.project.ProjectBuildFileChecksums _h0x7e0002 = r_0x7e0000;  
////END stream content output

////BEGIN class declarations (excluding array classes)
class java.util.HashMap implements java.io.Serializable {
    float loadFactor;
    int threshold;
}

class com.android.tools.idea.gradle.project.ProjectBuildFileChecksums implements java.io.Serializable {
    long myLastGradleSyncTimestamp;
    java.util.Map myFileChecksums;
}

////END class declarations

////BEGIN instance dump
[instance 0x7e0004: 0x7e0003/java.util.HashMap
  object annotations:
    java.util.HashMap
        [blockdata 0x00: 8 bytes]
        [String 0x7e0005: "settings.gradle"]
        [array 0x7e0007 classdesc [cd 0x7e0006: name [B uid -5984413125824719648]: [arraycoll sz 16 -89, -2, 26, -61, -111, 105, -75, -27, 40, 90, 94, 83, 102, 47, 37, 27]
        [String 0x7e0008: "build.gradle"]
        [array 0x7e0009 classdesc [cd 0x7e0006: name [B uid -5984413125824719648]: [arraycoll sz 16 70, 101, -14, 32, 100, -60, -85, -103, 73, -86, 15, 54, -45, 125, 50, 39]
        [String 0x7e000a: "local.properties"]
        [array 0x7e000b classdesc [cd 0x7e0006: name [B uid -5984413125824719648]: [arraycoll sz 16 -107, 64, 60, -33, -18, 18, 56, -84, 15, 0, -86, -73, -27, 127, -94, 27]
        [String 0x7e000c: "/Users/qtmfld/.gradle/gradle.properties"]
        [array 0x7e000d classdesc [cd 0x7e0006: name [B uid -5984413125824719648]: [arraycoll sz 16 -44, 29, -116, -39, -113, 0, -78, 4, -23, -128, 9, -104, -20, -8, 66, 126]
        [String 0x7e000e: "gradle.properties"]
        [array 0x7e000f classdesc [cd 0x7e0006: name [B uid -5984413125824719648]: [arraycoll sz 16 16, -69, 118, 80, -49, -19, 41, -8, 56, -86, 64, -63, 112, -14, 98, 47]
        [String 0x7e0010: "app/build.gradle"]
        [array 0x7e0011 classdesc [cd 0x7e0006: name [B uid -5984413125824719648]: [arraycoll sz 16 -3, -11, 63, -26, 67, -41, -100, 33, 85, -59, -49, -3, -90, 53, -106, 94]

  field data:
    0x7e0003/java.util.HashMap:
        threshold: 12
        loadFactor: 0.75
]
[instance 0x7e0002: 0x7e0000/com.android.tools.idea.gradle.project.ProjectBuildFileChecksums
  field data:
    0x7e0000/com.android.tools.idea.gradle.project.ProjectBuildFileChecksums:
        myFileChecksums: r0x7e0004: java.util.HashMap _h0x7e0004 = r_0x7e0003;  
        myLastGradleSyncTimestamp: 1522297024540
]
////END instance dump

$ 

Können Sie die folgenden Zeichenfolgen in java.util.HashMap.

  • "Einstellungen.gradle"
  • "bauen.gradle"
  • "lokale.Eigenschaften"
  • "/Users/qtmfld/.gradle/gradle.Eigenschaften"
  • "gradle.Eigenschaften"
  • "app/build.gradle"

Wh0 hat klargestellt, das gleiche Ergebnis bei Android Studio 3.2 Vorschau.

https://wh0.github.io/2018/02/17/build-file-checksums-ser.html

  • Ich personnaly Hinzugefügt gitignore da es scheint, sind system-Pfaden, und als build-Ordner eine cache-Ordner souldn nicht unter Versionskontrolle
  • Nach Ihrem Vorschlag, begutachtete ich den Inhalt und das Ergebnis addiert, wie oben. Danke.
  • Ich eingereicht haben dieses Problem in der öffentlichen issue tracker. issuetracker.google.com/issues/77544553
  • Das Problem wurde als "Fix" gekennzeichnet. Am 4. Mai, es wurde akzeptiert und behoben. Ich bin mir nicht sicher, wie es behoben wurde. Die repositories (AOSP und JetBrains GitHub), werden nicht aktualisiert. Es ist immer noch im private codelines.
InformationsquelleAutor qtmfld | 2018-03-29
Schreibe einen Kommentar