0

いくつかの buildTypes があります: debug、test、perf、release 、および一部のクラスは特定のビルドタイプ専用です。今、私はそのようなことをすることができません

/src/debug/java/package/MyClass.kt  //variant for debug

/src/main/java/package/MyClass.kt  //default variant

クラスの重複エラーが発生するためです。

現在、 Debugのバリアントを置き換えるだけで同じ 3 つのクラスになってしまうため、すべてのデフォルトの型に対してMyClassバリアントを作成したくありません。

 /src/debug/java/package/MyClass.kt  //variant for debug
 /src/test/java/package/MyClass.kt  //variant for default
 /src/perf/java/package/MyClass.kt  //variant for default
 /src/release/java/package/MyClass.kt  //variant for default

これを行うための最良のアプローチはどれですか?

私が考えていた解決策は、別のソースを作成し、それをgradleに追加して、sourcesetsデバッグではないすべてのbuildTypeでコンパイルすることです:

/src/debug/java/package/MyClass.kt.   //Variant for debug
/src/noDebug/java/package/MyClass.kt.  //Variant for default (not debug)

ただし、noDebug、noTest、noPerf、noRelease のパッケージが全員またはそれらのすべての組み合わせに必要であり、持続可能ではありません。

代わりに私が欲しいのは、「このクラスはビルドパッケージにありますか、それを使用しますか、そうでない場合は、この他のパッケージのクラスを使用します」

4

0 に答える 0