2016-08-12 16 views
0

私はアプリといくつかのモジュールm1(アンドロイドライブラリ)を持つプロジェクトを持っています。アプリはビルド時にモジュールのクラスを表示しません

私はappとm1にsrc\debug\javaというフォルダを作成します。私はこのフォルダに新しいクラスを書きました。アプリのいくつかの「デバッグ」クラスは、m1の「デバッグ」クラスを使用します。

試してください。エラー:package ... does not exist。エラーをクリックすると、エラーが表示されず、m1のクラスに行くことができます。

しかし、なぜそれが発生し、どのように修正されますか?

私はAS 2.1とgradle 2.14を使用しています(2.10試してみてください)。 ASとcmdからビルドを試してください。

UPD 2016-08-13:ああ、私はばかです。私はmainからいくつかのコードを削除するのを忘れました。

UPD 2016-08-13(2):いいえ、別の問題があります。今投稿を書く。

答えて

0

私は約非常に重要なことを忘れて:「ライブラリプロジェクトをビルドし、配布ブロブにパッケージ化されると、その後、ビルドは常にリリースビルドで... ビルライブラリプロジェクトを。」(hereから)。

私はいくつかのプロジェクトと1つの共通ライブラリを持っており、すべてのプロジェクトで使用されています。私はデバッグのための独自のクラス/リソース(診断ユーティリティ、ダイアログ、設定、設定)を作成します。私は共通ライブラリにデバッグビルドのためだけに配置します。

私は考えました:ライブラリのデバッグクラスは、アプリケーションのデバッグクラスでのみ使用されます。リリースapkはこのクラスを持ちません。

ビルドでエラーが発生します。 Graleはビルド時にリリースフォルダのライブラリクラスを検索しているためです。バックメインフォルダにデバッグフォルダからライブラリの

1)場所のデバッグコード:

だから、私は唯一の解決策を見つけます。

2)リリースビルド時にライブラリのデバッグリソースを除外するためのproguardルールを追加します。

関連する問題