2016-07-21 12 views
0

Android Studioでアプリを開発しています。パッケージ名はcom.mycompany.myappです。次に、別のパッケージからいくつかのコードを再利用したい:com.theta360.sample.v2。Android ClassNotFoundExceptionランタイムエラー

これを行うには、Androidスタジオに「com.theta360.sample.v2」という名前のパッケージを追加しました。次に、com.theta360.sample.v2のsrcディレクトリをproject/app/src/main /にコピーしました。これにはmycompany/myappも含まれています。

MainActivity.javaにあります。私はtheta360.sample.v2からLogViewクラスを使用する必要があります。そこで、 "import com.theta360.sample.v2.view.LogView"を追加しました。

次に、私は正常にアプリケーションを構築します。私は、デバイス上のアプリを起動すると

しかし、私はメッセージでエラーを受け取りました:

によって..Caused:java.lang.ClassNotFoundExceptionが:パス上のクラス「android.view.LogView」が見つかりませんでした。 DexPathList ...

私の質問は以下のとおりです。

(1)なぜ、実行時に、システムがandroid.view.LogViewを探すためにしてみてください。 LogViewはcom.theta360.sample.v2.viewからのものです。それを修正するには?

(2)ソースに別のパッケージを使用する正しい方法は何ですか?上記のように単にコードをコピーすることはできますか?

+0

srcフォルダをコピーしてはいけません。プロジェクトをインポートして実行する必要があります。あなたに関連するコードだけをコピーしてください。コピー中にパッケージ名、インポートされたクラスを常に確認してください – suku

+0

プロジェクトのクリーニングと再構築を試みましたか? – TheAnonymous010

+0

クリーニングと再構築を試みました。同じエラー –

答えて

0

私は自分の質問を解決しました。このエラーは、レイアウトxmlで使用されるLogViewによって発生します。パッケージ接頭辞付きの名前に変更する必要があります。

関連する問題