私は今回の件より前から CircleCI を使っておらず、最近は主に GitHub Actions でCIを構築していてこの件で被害は被っていないのだけど、軽く調べてみたところ Android project を JDK 9+ でビルドすることに強い興味をを持っている自分には結構興味深いことがわかったのでもう少し詳細に調べてまとめることにした。 何があったの 日本時間で 2020-08-18 のお話 CircleCI の Android Docker Image が更新され、JDK 8 ベースから JDK 11 ベースになった*1 これらの image を使ってCIを行っている Android project でビルドが失敗するものが発生した Twitter が少し賑やかになった 原因1: なぜビルドが失敗するようになったの この blog を書き始めてから調べて知った付け焼き刃な部分もあ
シャットダウンが延期されました 読み取り専用として存続します JCenter のシャットダウンについては2022年2月1日へ延期になりました。 https://jfrog.com/blog/into-the-sunset-bintray-jcenter-gocenter-and-chartcenter/ UPDATE: To better support the community in this migration, JFrog has extended the JCenter new package versions submission deadline through March 31st 2021. To clarify, the JCenter repository will keep serving packages for 12 months until February
JUCE6はCMakeに対応していますが、実はCMake対応の恩恵を受けられないプラットフォームが存在します。Androidです。 「は?」というのが多分一番正しいでしょう。何しろCMakeはだいぶ前からAndroid Studioでサポートされているわけで、むしろ一番恩恵を受けるべきプラットフォームです。Win/Mac/Linux/iOSのいずれもCMakeネイティブなビルド環境ではないのに、むしろCMakeがネイティブのビルド環境としてサポートされているAndroidがなぜかサポート外になっているのです。このままではいけない。 目次 Missions 分析編 一般的なAndroid C++サポートの実現方法 ProjucerのAndroidExporterで生成されるファイル build.gradle, local.properties, settings.gradle, gradle
Android Advent Calendar 2020の20日目はAndroid NDK方面で今開発が進んでいるPrefabパッケージ機構についていろいろまとめます。タイトルに書いている「ネイティブ」とはC/C++等のコンパイラが生成するCPUネイティブなコードの意味です*1。 目次 Prefabとは? AARパッケージの仕組みと、それだけでは足りない部分 Prefabツールによる状況の改善 prefabメタデータとprefabツールの役割 Prefabアーカイブの汎用性 モジュール Android StudioでPrefabパッケージを使う・作る PrefabとAGPのPrefabサポートの現在の課題 build.gradleでヘッダーディレクトリが1つしか指定できない Prefabパッケージとnon-Prefabパッケージの排他的関係 全てのネイティブライブラリで同一のlibc++_
Maven にある BOM の仕組みが Gradle には無い Java の世界、時代は Maven から Gradle に移行しつつある。しかし、だからと言って安易な気持ちで Gradle を選択すると痛い目に合うこともある。Gradle が Maven の上位互換ではないからだ。例えば、Maven にある BOM の仕組みが Gradle には無い。 Maven の BOM (bill of materials) という仕組みは、プロダクトの一連の依存性のバージョンを定義した一覧表であり、利用者はその BOM のバージョンを指定さえすれば、個々の依存性のバージョンを指定する必要がなくなるというもの。たとえば Java EE のテスティングフレームワークである Arquillian では arquillian-bom という BOM を提供しており、以下のように arquillian-b
GoogleはJavaアプリケーションを自動的にコンテナイメージにビルドしてくれるツール「Jib」が正式版となるバージョン1.0に到達したことを発表しました。 JavaのビルドツールであるMavenもしくはGradleのプラグインとしてJibをインストールすることで、コンテナイメージのビルド環境をあらかじめ用意することも、Dockerfileなどを記述するといった手間をかけることもなく、ビルドプロセスのなかでJibがJavaアプリケーションの構成を読み取り、適切なコンテナイメージを生成し、Dockerコンテナのレジストリへの登録まで自動的に行ってくれます。 これまでJavaアプリケーションをコンテナ化するには、まずはJavaのソースコードからJavaアプリケーションをビルドし、次にDocker環境などを用意してDockerfileを記述し、Dockerイメージを生成するためのビルドを行う、
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 2018年現在でもJava開発をしていると、Antすら使っていないEclipseプロジェクトにそこそこの頻度で出くわします。Eclipseの自動コンパイルが通ればOKであり、ビルドはExcel手順書をもとに手動で行われ、依存関係ライブラリはもちろんlibフォルダに各種jarファイルが放り込んであります。Eclipse上以外ではどう動かせば分かる人がいないため、コマンドラインからビルドなどを行うことは叶わず、CI化なんて夢のまた夢です。 そんなJava開発から脱却したい人向けのJava開発のモダン化ガイドです。 基本的にJava 8以降で
Javaアプリケーションを自動的にDockerイメージにビルドしてくれる「Jib」、Googleがオープンソースで公開 Googleは、Javaアプリケーションを自動的にDockerコンテナ化するツール「Jib」をオープンソースで公開しました。 JavaのビルドツールであるMavenもしくはGradleのプラグインとしてJibをインストールすることで、Docker環境の構築やDockerfileなどを記述することなく、ビルドプロセスのなかで構成を読み取り、Dockerコンテナのイメージを生成、Dockerコンテナのレジストリへの登録まで自動的に行ってくれます。 これまでJavaアプリケーションをDockerコンテナ化するには、JavaアプリケーションをビルドしたうえでDocker環境を用意してDockerfileを記述し、そこでDockerイメージを生成するといった手順が必要でした。 Ji
IDEs CLion DataGrip DataSpell GoLand IntelliJ IDEA PhpStorm PyCharm RustRover Rider RubyMine WebStorm Plugins & Services Big Data Tools JetBrains Platform Scala Toolbox App JetBrains AI Grazie Junie JetBrains for Data Air Team Tools Datalore TeamCity YouTrack Qodana CodeCanvas Matter Databao .NET & Visual Studio .NET Tools ReSharper C++ Languages & Frameworks Kotlin Ktor MPS Amper Education & Rese
これは、DroidKaigi 2016のセッション「Instant Runを実現する仕組み」と連動するエントリです。セッションは30分という短い時間で行われるので、細かい説明はこちらでまとめていきます。 Part I: Instant Runを理解するためのAndroidビルド概説 はじめに 2015年11月に、Android Studio 2.0 previewと同時に公開されたInstant Runは、開発中のアプリケーションのAndroidデバイスあるいはエミュレーター(以下"target")へのデプロイメントを高速化して、また実行中のアプリケーションを再起動することなくコードを置き換えることを可能にして、デバッグ開始までの待ち時間を劇的に減らすことが可能になりました。開発者がIDE上でデバッグを指示してから、実際のデバッグ開始まで、場合によっては1秒程度で出来てしまう、というもので
会員事業部所属エンジニアの山下(@tomorrowkey)です。 去年はモバイルファースト室でバリバリとAndroidアプリを書いていたのですが、今年に入ってサーバーサイドもやってみたいと思い、最近はRubyを書いている日々です。 Rubyはあまりやったことがなかったのですが、REPLがあってとても助かります。Java 9でREPLが使えるようになるらしいですが、Androidは縁遠い話ですね。 さて、今回は来年ビルドツールとして脚光を浴びそうなBazelをご紹介したいと思います。 Bazelとは何か Bazel http://bazel.io/ BazelはGoogleが社内で使用していたビルドツールをオープンソース版として開発をしているものです。2015年3月にAlpha版が公開されました。 Alpha版ではクライアントアプリケーションやiOSアプリのビルドなどがサポートされていて、最
Just as there was Retroweaver et al. for running Java 5 code with generics on Java 1.4, Retrolambda lets you run Java 8 code with lambda expressions, method references and try-with-resources statements on Java 7, 6 or 5. It does this by transforming your Java 8 compiled bytecode so that it can run on an older Java runtime. After the transformation they are just a bunch of normal .class files, with
昨日はGradleをちょっと使ってみたわけですが、元がGroovyだからかどうかはわかりませんけど、とにかく重い印象があります。やっぱり、こういうのって1回きりの使い捨てより、常駐型でないと厳しいですよね。 というわけで、ここでGradleが用意しているのがDaemonです。 http://www.gradle.org/docs/current/userguide/gradle_daemon.html http://gradle.monochromeroad.com/docs/userguide/gradle_daemon.html まあ、文章中に「experimental」と書かれているように、まだ試験的サポートのようですが。 とはいえ、効果は明らかにあるようなので、使っていってみましょう。今回使うGradleプロジェクトのスケープゴートは、最初に用意したJavaの「Hello Worl
Android Studio最速入門~効率的にコーディングするための使い方 第1回Android Studio、そしてベースとなる「IntelliJ IDEA」とは何か? はじめに 5月15日にサンフランシスコで開催された米Google Inc.のイベント「Google I/O 2013」にて、Android向けの統合開発環境(以下、IDE)「Android Studio」が発表されました。Android Studioは、今までEclipseのプラグインとして提供されてきたADT Plugin(Android Development Tools)とは異なり、新たに「IntelliJ IDEA」をベースに作り直した全く新しいIDEです。 Android Studioのニュースは瞬く間に国内外に知れ渡り、そのニュースと共にIntelliJ IDEAという言葉も多く目にしたと思います。 Int
こんにちは。ヘルスケア事業部の関口(@tanukiti1987)です。 普段はRailsを使いつつ、おいしい健康というサービスの開発をしているのですが、ご縁があって3ヶ月ほど前からAndroidアプリ開発に携わっています。 今回はそんなAndroid用のライブラリを誰でもお手軽に公開して、Android開発をグイグイ高速化していこう!という観点からお話をしたいと思います。 忙しい人向けの3行まとめ Android向けライブラリを公開するのは、わずか5ステップのみ 公開するライブラリにはきちんとライセンスを書こう ライセンスに特にこだわりがなければ、Apache2.0, MIT あたりがよい はじめに iOSとAndroidの開発上の違い 私自身、前職で2年ほどiOSをメインで開発していたということもあり、Androidは機種差分、バージョンの断片化こそあれ、ネイティブアプリ作りの根幹は変わ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く