Commit 032f1e7
authored
[Xamarin.Android.Tools.Bytecode-Tests] Fix BuildClasses (#1013)
The `BuildClasses` target runs on every rebuild:
% dotnet build
…
Build succeeded.
"…/Java.Interop/Java.Interop.sln" (default target) (1:2) ->
"…/Java.Interop/tests/Xamarin.Android.Tools.Bytecode-Tests/Xamarin.Android.Tools.Bytecode-Tests.csproj" (default target) (16:14) ->
"…/Java.Interop/tests/Xamarin.Android.Tools.Bytecode-Tests/Xamarin.Android.Tools.Bytecode-Tests.csproj" (Build target) (16:15) ->
(BuildClasses target) ->
EXEC : warning : [options] bootstrap class path not set in conjunction with -source 8 […/Java.Interop/tests/Xamarin.Android.Tools.Bytecode-Tests/Xamarin.Android.Tools.Bytecode-Tests.csproj]
"…/Java.Interop/Java.Interop.sln" (default target) (1:2) ->
"…/Java.Interop/tests/Xamarin.Android.Tools.Bytecode-Tests/Xamarin.Android.Tools.Bytecode-Tests.csproj" (default target) (16:14) ->
"…/Java.Interop/tests/Xamarin.Android.Tools.Bytecode-Tests/Xamarin.Android.Tools.Bytecode-Tests.csproj" (Build target) (16:16) ->
EXEC : warning : [options] bootstrap class path not set in conjunction with -source 8 […/Java.Interop/tests/Xamarin.Android.Tools.Bytecode-Tests/Xamarin.Android.Tools.Bytecode-Tests.csproj]
"…/Java.Interop/Java.Interop.sln" (default target) (1:2) ->
"…/Java.Interop/tests/Xamarin.Android.Tools.Bytecode-Tests/Xamarin.Android.Tools.Bytecode-Tests.csproj" (default target) (16:14) ->
"…/Java.Interop/tests/Xamarin.Android.Tools.Bytecode-Tests/Xamarin.Android.Tools.Bytecode-Tests.csproj" (Build target) (16:15) ->
EXEC : warning : [options] bootstrap class path not set in conjunction with -source 8 […/Java.Interop/tests/Xamarin.Android.Tools.Bytecode-Tests/Xamarin.Android.Tools.Bytecode-Tests.csproj]
"…/Java.Interop/Java.Interop.sln" (default target) (1:2) ->
"…/Java.Interop/tests/Xamarin.Android.Tools.Bytecode-Tests/Xamarin.Android.Tools.Bytecode-Tests.csproj" (default target) (16:14) ->
"…/Java.Interop/tests/Xamarin.Android.Tools.Bytecode-Tests/Xamarin.Android.Tools.Bytecode-Tests.csproj" (Build target) (16:16) ->
EXEC : warning : [options] bootstrap class path not set in conjunction with -source 8 […/Java.Interop/tests/Xamarin.Android.Tools.Bytecode-Tests/Xamarin.Android.Tools.Bytecode-Tests.csproj]
4 Warning(s)
0 Error(s)
% dotnet build
# same as above; EXEC warnings from `BuildClasses` target
% dotnet build
# ad infinitum
The cause for the warnings -- and the repetitive `BuildClasses` target
execution -- is that the `@(_BuildClassOutputs)` item group is wrong;
from the Dignostic build log:
Target "BuildClasses: (TargetId:301)" in file "…/Java.Interop/tests/Xamarin.Android.Tools.Bytecode-Tests/Xamarin.Android.Tools.Bytecode-Tests.targets" from project "…/Java.Interop/tests/Xamarin.Android.Tools.Bytecode-Tests/Xamarin.Android.Tools.Bytecode-Tests.csproj" (target "BeforeCompile" depends on it):
Building target "BuildClasses" completely.
Output file "obj//Debug-net7.0/classes/Collection.class" does not exist.
`obj/Debug-net7.0/classes/Collection.class` doesn't exist because it
will *never* exist; the file created is *actually*
`obj/Debug-net7.0/classes/java/util/Collection.class`.
Note the "missing" `java/util` in the path.
The cause of the missing `java/util` is that `@(_BuildClassOutputs)`
uses `%(RecursiveDir)`, which only expands `**` wildcards, while
`Collection.java` comes from:
<TestJarNoParameters Include="java/java/util/Collection.java" />
Note the *lack* of `**`. Consequently, `%(RecursiveDir)` expanded as
the empty string, which is why `java/util` was "lost".
Fix this by introducing wildcards:
<TestJarNoParameters Include="java/**/Collection.java" />
This fixes the repetitive `BuildClasses` execution:
% dotnet build
…
EXEC : warning : [options] bootstrap class path not set in conjunction with -source 8 […/Java.Interop/tests/Xamarin.Android.Tools.Bytecode-Tests/Xamarin.Android.Tools.Bytecode-Tests.csproj]
% dotnet build
% no `EXEC : warning` message1 parent 0eaa47e commit 032f1e7
File tree
1 file changed
+1
-1
lines changed- tests/Xamarin.Android.Tools.Bytecode-Tests
1 file changed
+1
-1
lines changedLines changed: 1 addition & 1 deletion
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | 1 | | |
2 | 2 | | |
3 | 3 | | |
4 | | - | |
| 4 | + | |
5 | 5 | | |
6 | 6 | | |
7 | 7 | | |
| |||
0 commit comments