――Ich mache Android-Entwicklung mit Kotlin, aber es wird jedes Mal schwierig, mit Android Studio zu bauen.
Es ist ein Entwicklungs-Mac, den ich kürzlich bekommen habe, also hatte ich Docker noch nicht oder Ich werde hier nichts schreiben, also werde ich es weglassen.
Dieses Mal werde ich openjdk8 verwenden Der Grund dafür ist, dass dies die Standardeinstellung ist, die in der Android-Vorlage YAML von gitlabci verwendet wird.
Zuerst wie gewohnt ziehen Versionsspezifikation ist erforderlich
docker pull openjdk:8-jdk
Und starten Sie den Container
docker run -it openjdk:8-jdk
Wenn Sie das oben genannte tun, denke ich, dass es automatisch in den Container gelegt wird, also werde ich das Paket installieren
apt-get --quiet update --yes
apt-get --quiet install --yes wget tar unzip lib32stdc++6 lib32z1
export ANDROID_COMPILE_SDK=28
export ANDROID_BUILD_TOOLS=29.0.3
export ANDROID_SDK_TOOLS=6514223
export ANDROID_HOME="/android-home"
install -d $ANDROID_HOME
wget --output-document=$ANDROID_HOME/cmdline-tools.zip https://dl.google.com/android/repository/commandlinetools-linux-${ANDROID_SDK_TOOLS}_latest.zip
pushd $ANDROID_HOME
unzip -d cmdline-tools cmdline-tools.zip
popd
export PATH=$PATH:${ANDROID_HOME}/cmdline-tools/tools/bin/
sdkmanager --version
yes | sdkmanager --sdk_root=${ANDROID_HOME} --licenses || true
sdkmanager --sdk_root=${ANDROID_HOME} "platforms;android-${ANDROID_COMPILE_SDK}"
sdkmanager --sdk_root=${ANDROID_HOME} "platform-tools"
sdkmanager --sdk_root=${ANDROID_HOME} "build-tools;${ANDROID_BUILD_TOOLS}"
chmod +x ./gradlew
Ich denke, es ist in Ordnung zu überprüfen, ob es Fehler auf der Konsole gibt und die Umgebungsvariablen mit printenv für alle Fälle zu überprüfen.
git clone Bringen Sie den Quellcode in den Container Dies ist nur ein Klon, also lass es weg
Der Build selbst ist einfach, drücken Sie einfach den Gradle-Befehl
./gradlew assemble
Wenn Sie Varianten und Geschmacksrichtungen verwenden möchten, ändern Sie den Befehl Ich habe auf [hier] verwiesen (https://techblog.zozo.com/entry/build_variants).
Wenn dies jedoch unverändert bleibt, tritt ein Fehler auf und es funktioniert nicht. Ich bin hier gestolpert, deshalb möchte ich zwei Punkte einführen.
Beim Erstellen wurde der folgende Fehler angezeigt
「SDK location not found. Define location with an ANDROID_SDK_ROOT environment variable or by setting the sdk.dir path in your project's local properties file at」
Es sieht aus wie ein Fehler wie "Der Speicherort des SDK ist nicht in lokalen Eigenschaften geschrieben".
Ich suchte nach lokalen Immobilien, wie mir gesagt wurde, konnte sie aber nicht finden
Ich war mir dessen nicht bewusst, da es (wahrscheinlich) von mir selbst erstellt wurde, als ich Android Studio verwendete, aber es scheint, dass ich lokale Eigenschaften erstellen und den Speicherort des SDK beschreiben muss.
Ich habe vim überhaupt nicht gesetzt, also ist es von dort ^^;
apt-get install vim
Gehen Sie zum obersten Ordner der App
vi local.properties
Der Inhalt ist so
## This file is automatically generated by Android Studio.
# Do not modify this file -- YOUR CHANGES WILL BE ERASED!
#
# This file must *NOT* be checked into Version Control Systems,
# as it contains information specific to your local configuration.
#
# Location of the SDK. This is only used by Gradle.
# For customization when using a Version Control System, please read the
# header note.
#Wed Jan 07 15:34:05 JST 2015
sdk.dir=/android-home
Jetzt drücke ich erneut auf den Build-Befehl, aber diesmal erhalte ich einen weiteren Fehler
Der nächste Fehler ist 「Could not connect to kotlin daemon. Using fallback strategy.」 Inhalt
Als ich es nachgeschlagen habe, scheint es, dass Demon-chan gestorben ist, als die Erinnerung die Obergrenze erreicht hat.
Klicken Sie in der Statusleiste Ihres Mac auf die Walmarke und ändern Sie die Einstellungen in der Docker-App, um den maximalen Speicherplatz zu erhöhen. Einzelheiten dazu finden Sie unter hier.
Endlich das Wort "ERFOLGREICH BAUEN"!
Ich mache mir Sorgen, dass ich beim Bauen nicht nach der Unterschrift gefragt wurde, also werde ich das später hinzufügen. Ich dachte, es lag am Debug, aber beim Erstellen mit Android Studio kann ich nichts sagen, da sowohl Release als auch Debug signiert werden müssen.
Diesmal habe ich keine Docker-Datei erstellt Der Grund ist, dass es in gitlabci.yaml aufgeführt ist
nächstes Mal
--Automatischer Build bei Commit von Git Labci
Ich wünschte, ich könnte einen Treffer machen
das ist alles Vielen Dank für Ihre Beziehung
Recommended Posts