Android Ubuntu 10.04 i386サーバー(ヘッドレス)でHelloというプロジェクトがあります。これには、Androidプロジェクトフォルダーに必要なものがすべて含まれています。このsynaxを使用してProjectフォルダーでbashのプロジェクト:
./Android create project --target 5 --name HelloCompile --path ../../Projects/Hello --activity HelloActivity --package com.code.Hello
その後、私は次のようにantで.apkを構築しようとします:
ant debug
私はこのエラーを受け取ります:
BUILD FAILED
/home/myusername/www/sdk/tools/ant/main_rules.xml:384: Unable to find a javac compiler;
com.Sun.tools.javac.Main is not on the classpath.
Perhaps Java_HOME does not point to the JDK.
It is currently set to "/usr/lib/jvm/Java-6-openjdk/jre"
ant debug
を実行する直前に次を実行するため、非常に混乱します。
export Java_HOME=/usr/lib/jvm/Java-6-openjdk
bashシェルのprintenv
は以下を返すため、動作することがわかっています。
Java_HOME=/usr/lib/jvm/Java-6-openjdk
これをコンパウンドするには、この行を/ etc/environmentファイルに追加します
export Java_HOME=/usr/lib/jvm/Java-6-openjdk
問題も解決しません-私は同じエラーを受け取ります。 Ubunutがまだ/usr/lib/jvm/Java-6-openjdk/jre
がJava_HOMEであると考える事実を変更することはありません。何が悪いのでしょうか?私はこれに長時間かかりすぎました。
JDKをインストールしましたか?
Ubuntuをインストールすると、JREのみがデフォルトパッケージの一部としてインストールされます。残念ながら、Ubuntuのパッケージ管理では、JREがJDKとともにインストールされたかのようにディレクトリに名前が付けられます。ディレクトリの名前はJava-6-openjdk
JDKが存在しない場合でも。
以下をせよ:
Sudo apt-get install openjdk-6-jdk
同じディレクトリにJDKがインストールされます。
---出力内の小さなアイテムに気づいた後に更新---
_Java_HOME
_をJava Runtime Environmentの正しい場所に設定しているため、Javaプログラム、しかしそれらを開発しない。
_Java_HOME
_を_/usr/lib/jvm/Java-6-openjdk
_に短縮します(末尾のjre
が削除されていることに注意してください)。その後、Antラッパー/コンパイラー検出コードは混乱せず、組み込みの関連するJava Runtime Environmentの代わりにJava Development Environmentのホームを指すようになります。 =。
組み込みのJava Runtime Environmentは、コア(コンパイラツールは含まれていません)のみに対してテストできることを確認するために提供されていますJavaオファリング。
---元の投稿が続きます---
コマンドjavac
の検索は、javac
が通常_Java_HOME
_の下のサブディレクトリにあることを超えて、_Java_HOME
_とはほとんど関係ありません。
あなたがする必要があるのは、環境変数PATH
を修正して、Java実行可能ファイルが置かれているディレクトリ。
_PATH=${PATH}:${Java_HOME}/bin
export PATH
_
ただし、設定によって若干異なる場合があります。もしあなたがそうするなら
_ls ${Java_HOME}/bin
_
javac実行可能ファイルが表示される場合、上記のパス変数の変更は変更することなく機能します。
Edwin Buckが述べたように、/ usr/bin /ディレクトリーで/ etc/alternatives/Javaへのソフトリンクの$ PATHを確認してください。追加されたJava_HOME変数の前に読み込まれます。
それが私の問題でした:
ls -al /usr/bin/j*
lrwxrwxrwx 1 root root 22 2012-05-07 13:26 /usr/bin/Java -> /etc/alternatives/Java
lrwxrwxrwx 1 root root 25 2011-05-12 19:45 /usr/bin/Java_vm -> /etc/alternatives/Java_vm
lrwxrwxrwx 1 root root 24 2011-05-01 05:22 /usr/bin/javaws -> /etc/alternatives/javaws
lrwxrwxrwx 1 root root 26 2011-05-12 19:45 /usr/bin/jcontrol -> /etc/alternatives/jcontrol
lrwxrwxrwx 1 root root 23 2011-04-26 02:24 /usr/bin/jexec -> /etc/alternatives/jexec
Java_HOMEとPATHを変更するだけでは不十分です。
Java必要なJDKバージョン(Java Runtime Environment JREだけでなく、Java DEVELOPMENT Kit)をインストールした後、Sudo update-alternatives --config Java
。 Ubuntuを使用している場合は、おそらく1.6と1.7がインストールされており、PPAで1.8を使用できます(ただし、1.8のPPAは古くありません)。