問題タブ [dx]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - Android SDK に dx はありませんか?
linux_x86 用の Android SDK をダウンロードしました。しかし、dxが見つかりません。ドキュメントには、 /tools/ に配置する必要があると記載されています。ある時点からdxは含まれなくなりましたか?
android - AndroidにないパッケージでコンパイルされたAndroidでjarライブラリを使用するにはどうすればよいですか
Java の完全な実装でコンパイルされたいくつかの jar ファイルをインポートする必要があります。Java が提供するすべてのパッケージを Android が使用しているわけではないことはわかっています。私の質問は次のとおりです。エラーを作成せずにそれらをインポートすることは可能ですか? jar を android jar に変換できるツールはありますか? もしそうなら、いくつかの例を提供できますか。どんな助けでも大歓迎です。
android - Android向けDXツールのAPIやサンプルの仕様はありますか!
このライブラリを呼び出す dexfile をアドホックに生成するために、DX Tool API を使用したいと思います。このライブラリのサンプルまたは仕様はありますか?
全てに感謝
ご挨拶!
android - dx を使用して、外部パッケージ ライブラリを参照する Java プログラムの dex ファイルを生成する方法
私は初心者の Android 開発者であり、dx を使用して、外部パッケージ ライブラリを参照する Java プログラムの dex ファイルを生成する方法を知りたいと考えています。最終的に、Android デバイス内のコマンド ラインで dalvikvm を使用して、この生成された dex ファイルを実行しようとしています。
これが私の問題の例です:
パッケージ moon.jar を参照する Java HelloWorld.class がある場合 (たとえば、HelloWorld.class のメイン メソッド内でパッケージからオブジェクトをインスタンス化する場合)、dex ファイルを生成するために発行する完全かつ正確な dx コマンドは何ですか? /s?
dex ファイルが生成されたら、それらを jar にパッケージ化するにはどうすればよいですか?
生成されたjarを使用して、Androidデバイスのコマンドラインでjarファイルを実行するための完全かつ正確なdalvikvmコマンドは何ですか?
dx と dalvikvm の専門家からのご連絡をお待ちしております。
java - AndroidでサポートされていないJavaコアライブラリの使用方法は?
Android Dx でコア クラスを使用すると問題が発生する "javax/xml/bind/Binder.class" の処理に問題があります Web サービスを開発するには javax.xml.* のクラスが必要ですが、Android では完全にはサポートされていません。これらの jar をインポートすると、Eclipse にコンパイル エラーは表示されませんが、DX はそれを処理できません。インターネットで検索したところ、 --core- ライブラリを使用するか、jarjar を使用して再パッケージ化できるとのことです。Eclipse に DX オプションを追加するためのチュートリアルは見つかりませんでした。それを解決するのを手伝ってくれてありがとう。
java - Jar をコンパイルして Android プロジェクトに追加する
ここに問題があります。私はそれに何日も費やし、すべてのデータベースを検索しました。そのため、適切な単語を検索しなかったか、答えがないかのどちらかです。うまくいけば「まだ」です。
症状: - Android プロジェクトのコンパイル DX は、プロジェクトがビルドされるたびにすべての jar をコンパイルします - 1 回実行するだけで十分な理由はありません。数分かかります。
本当の問題:
- 複数の Jar を追加すると、eclipse がクラッシュする原因になります -- 現在、これはこれらの設定 (重い jar) にあります。
(実際にはパフォーマンスが向上するため、Eclipse のコンパイルが遅い場合は、-XX:+UseParallelGC を追加できます) DX が jar をコンパイルしている間に動作しますが、その間を試行しますが、CPU がビジーでそれができないため、それぞれ 3MB の 4 番目から 5 番目の jar に到達する時点で、ヒープに 600MB のようなものがあります。これはgcoverheadlimit を使用した理由)
それらの1つまたは複数を一緒にコンパイルすると、(同じAndroidプロジェクト内で)うまくコンパイルされます。問題は、それらを個別にコンパイルする方法が見つからないことです(クライアントデバイスにapkをインストールする必要があります)。それらをまとめてコンパイルすると、Eclipse がクラッシュします。
cmdとDXを使用してそれらを1つずつコンパイルしようとしましたが、ビルドされていますが、eclispeでプロジェクトをビルドすると再ビルドされるため、何もしなかったようで、jarをDEXファイルに変換しようとしても役に立ちませんでした.
Javaヒープサイズに関する多くの投稿を赤くしましたが、これは私の場合ではなく、gcoverheadlimitを使用しました.jarが多すぎるとクラッシュします.
すべてを要約すると、Javaの通常のjarをDalvik形式に変換し、それをリソースとしてAndroidプロジェクトに追加したいので、プロジェクトがコンパイルされたら、jarをDalvik形式に変換する必要はありません。
android - HelloWorld は dalvikvm では実行できません
https://android.googlesource.com/platform/dalvik/+/gingerbread/docs/hello-world.htmlの Hello World の例を試しています
しかし、私の Foo プログラムは実行されませんでした。dalvikvm は次のことについて不満を述べました。
Dalvik VM はクラス 'Foo' を見つけることができません java.lang.NoClassDefFoundError: dalvik.system.NativeStart.main(Native Method) の Foo /foo.jar] で dalvik.system.PathClassLoader.findClass(PathClassLoader.java:243) で java.lang.ClassLoader.loadClass(ClassLoader.java:573) で java.lang.ClassLoader.loadClass(ClassLoader.java:532) で... あともう1つ
Logcat は、dalvikvm の呼び出し中に詳細情報を提供しました。
D/dalvikvm(1361): instr 幅テーブルを作成しています E/dalvikvm(1361): dex キャッシュを開けません '/data/dalvik-cache/mnt@sdcard@foo.jar@classes.dex': そのようなファイルまたはディレクトリはありませんI/dalvikvm(1361): /mnt/sdcard/foo.jar のキャッシュを開いたり作成したりできません (/data /dalvik-cache/mnt@sdcard@foo.jar@classes.dex) W/dalvikvm(1361): threadid =1: キャッチされない例外で終了するスレッド (group=0x4 001e9a8)
私が何を間違えたか知っている人はいますか?
android - 「Dalvik 形式への変換に失敗しました」エラーが消えない
"Conversion to Dalvik format failed: unable to execute dex: wrapper was not properly loaded first"
Eclipse のプロジェクトでこのエラーが発生しました。検索したところ、すべての回答で .jar ファイルの競合の問題であり、プロジェクトをクリーンアップするとうまくいくはずです。ライブラリには .jar ファイルが 1 つしかなく、それをクリーニングしても消えませんでした。実際、すべてのプロジェクトをクリーンアップしたところ、他のプロジェクトでも同じエラーが発生しました!! 前回プロジェクトを正常に実行して以来、Eclipse で何もしていません。店に行って戻ってきて、もう一度実行しようとしたところ、このエラーが発生しました。新しい Asus タブレット用の OEM ドライバーをダウンロードしましたが、ダウンロード フォルダーに残っています。どうしたの??
android - コマンドラインからのAndroidプロジェクトの管理
antを使用せずにコマンドラインからAndroidアプリを管理および実行しているので、次の手順に従いました。
- R.javaを生成します
- R.javaとすべての
.java
ファイルsrc
を.class
ファイルにコンパイルします dex
以下のコマンドを使用して、クラスファイルのセットをファイルにアセンブルします
dx --dex --verbose --output=./bin/classes.dex ./bin
.class
ファイルはbinディレクトリにあります。
しかし、これらの手順で次のエラーが発生します。
このため、Classes.dex
ファイルを作成できません。
誰かがこれに対する解決策を提案できますか?
[コマンドラインからのみEclipseとantを使用しない]
android - Dx 警告: InnerClasses を無視しています .. for org.apache.tools.ant
この一連の警告に遭遇したため、メモリ オーバーフローが発生し、最終的に Eclipse がクラッシュしました。
これは、参照ライブラリとして含まれる twitter4J コア jar を持つ Android アプリケーションです。これは Google API (com.google.android.) を使用しているため、ターゲットを一般的な ADK ではなく Google API に設定します。
これが問題です。
[2011-11-18 08:29:24 - Twitter] Dx の警告: 匿名の内部クラス (org.apache.tools.ant.taskdefs.Parallel$1) の InnerClasses 属性が無視されます。このクラスは、最新の .class ファイル形式を対象としていないコンパイラによって生成された可能性があります。推奨される解決策は、最新のコンパイラを使用し、「-target」型オプションを指定せずに、ソースからクラスを再コンパイルすることです。この警告を無視すると、このクラスに対するリフレクション操作によって、このクラスが内部クラスではないことが誤って示されます。
この種の警告は、約 20 個の内部クラス (タスク定義では約 6 個) まで継続し、コンソールに表示されるすべての内部クラスは org.apache.tools.ant のものです。
http://mac.softpedia.com/get/System-Utilities/Java.shtmlを使用して、Mac OS X Lion 用に Java SE 6 を 1.6 に更新しました。
しかし、まだ問題が存在します。アリをアップグレードする必要がありますか? 私のアリのバージョンは1.8.2です。