-
Notifications
You must be signed in to change notification settings - Fork 533
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Visual Studio update to 16.9.4 cause binding library build fail #5921
Comments
Can you provide a sample project or From the error message, my best guess is that this is generating the return type for a method inside a I tried to reproduce the error with this Java, but it did not crash: package example;
public interface MyInterface
{
public class MyClass
{
public void DoSomething () {}
public int DoSomethingInt () { return 0; }
public MyClass DoSomethingMyClass () { return new MyClass (); }
}
} |
vCloud.AndroidShareLibrary.zip |
@jpobst Is there any way solve this problem |
You can use metadata I'll fix this regression for future versions, but you may need to downgrade back to 16.8 if you need the |
Thanks,It's worked for me,i don't need FlowIterator types |
Fixes: dotnet/android#5921 Context: #834 (comment) Context: https://github.com/xamarin/java.interop/blob/100fffc1dc416f543293d0509870138d9d4f1669/tools/generator/Java.Interop.Tools.Generator.CodeGeneration/CodeGenerator.cs#L1175-L1181 Consider the following Java type declaration: package com.example; public interface FlowIterator<R> { R next(); public static class RangeIterator<T extends Comparable<T>> implements FlowIterator<T> { public T next() {return null;} } } This used to work in d16-7 -- not sure when exactly we broke it -- but it now throws a `NullReferenceException` when using `generator --codegen-target=XAJavaInterop1`, when emitting the nested `FlowIteratorRangerIterator` type: $ mono bin/Debug/generator.exe -o yyy ji-834-fixed.xml --codegen-target=XAJavaInterop1 … Unhandled Exception: System.NullReferenceException: Object reference not set to an instance of an object at Xamarin.SourceWriter.MethodWriter.WriteReturnType (Xamarin.SourceWriter.CodeWriter writer) at Xamarin.SourceWriter.MethodWriter.WriteSignature (Xamarin.SourceWriter.CodeWriter writer) at Xamarin.SourceWriter.MethodWriter.Write (Xamarin.SourceWriter.CodeWriter writer) Fix the `NullReferenceException` by ensuring that the `ReturnType` property and `Parameters` collection are set before the `BoundMethodAbstractDeclaration` constructor completes.
Fixes: dotnet/java-interop#835 Fixes: dotnet#5921 Context: dotnet#5894 Changes: http://github.com/xamarin/Java.Interop/compare/12e670a8560f69581d3a3adf0a9d91e8ce8c9afa...2573dc8c84fd4eb68e75bcae73912c26f4942356 * dotnet/java-interop@2573dc8c: [Java.Interop.Tools.*] IMetadataResolver not TypeDefinitionCache (dotnet#842) * dotnet/java-interop@412e974b: Revert "[generator] Disable [SupportedOSPlatform] until .NET 5/6. (dotnet#781)" (dotnet#841) * dotnet/java-interop@23baf0bc: [Java.Interop] Fix NRT warnings introduced by targeting 'net6.0' (dotnet#840) * dotnet/java-interop@131c1496: [generator] Fix NRE from return type not consistently set (dotnet#834) * dotnet/java-interop@100fffc1: [generator] Ensure "global::" is prepended to generic return casts. (dotnet#838) * dotnet/java-interop@9b89e90e: [generator] Ignore types without names (dotnet#837) * dotnet/java-interop@0e01fb5d: [Java.Interop.Tools.JavaSource] Merge @return block values (dotnet#836)
Fixes: dotnet/java-interop#835 Fixes: dotnet#5921 Context: dotnet#5894 Changes: http://github.com/xamarin/Java.Interop/compare/12e670a8560f69581d3a3adf0a9d91e8ce8c9afa...2573dc8c84fd4eb68e75bcae73912c26f4942356 * dotnet/java-interop@2573dc8c: [Java.Interop.Tools.*] IMetadataResolver not TypeDefinitionCache (dotnet#842) * dotnet/java-interop@412e974b: Revert "[generator] Disable [SupportedOSPlatform] until .NET 5/6. (dotnet#781)" (dotnet#841) * dotnet/java-interop@23baf0bc: [Java.Interop] Fix NRT warnings introduced by targeting 'net6.0' (dotnet#840) * dotnet/java-interop@131c1496: [generator] Fix NRE from return type not consistently set (dotnet#834) * dotnet/java-interop@100fffc1: [generator] Ensure "global::" is prepended to generic return casts. (dotnet#838) * dotnet/java-interop@9b89e90e: [generator] Ignore types without names (dotnet#837) * dotnet/java-interop@0e01fb5d: [Java.Interop.Tools.JavaSource] Merge @return block values (dotnet#836)
Fixes: dotnet/java-interop#835 Fixes: dotnet#5921 Context: dotnet#5894 Changes: http://github.com/xamarin/Java.Interop/compare/12e670a8560f69581d3a3adf0a9d91e8ce8c9afa...a5ed8919fb2ec894cb8144e51ae7c29b4811ee2a * dotnet/java-interop@a5ed8919: [Java.Interop.Tools.Cecil] Fix the xamarin-android build * dotnet/java-interop@2573dc8c: [Java.Interop.Tools.*] IMetadataResolver not TypeDefinitionCache (dotnet#842) * dotnet/java-interop@412e974b: Revert "[generator] Disable [SupportedOSPlatform] until .NET 5/6. (dotnet#781)" (dotnet#841) * dotnet/java-interop@23baf0bc: [Java.Interop] Fix NRT warnings introduced by targeting 'net6.0' (dotnet#840) * dotnet/java-interop@131c1496: [generator] Fix NRE from return type not consistently set (dotnet#834) * dotnet/java-interop@100fffc1: [generator] Ensure "global::" is prepended to generic return casts. (dotnet#838) * dotnet/java-interop@9b89e90e: [generator] Ignore types without names (dotnet#837) * dotnet/java-interop@0e01fb5d: [Java.Interop.Tools.JavaSource] Merge @return block values (dotnet#836)
Fixes: dotnet/java-interop#835 Fixes: #5921 Context: #5894 Changes: http://github.com/xamarin/Java.Interop/compare/12e670a8560f69581d3a3adf0a9d91e8ce8c9afa...a5ed8919fb2ec894cb8144e51ae7c29b4811ee2a * dotnet/java-interop@a5ed8919: [Java.Interop.Tools.Cecil] Fix the xamarin-android build * dotnet/java-interop@2573dc8c: [Java.Interop.Tools.*] IMetadataResolver not TypeDefinitionCache (#842) * dotnet/java-interop@412e974b: Revert "[generator] Disable [SupportedOSPlatform] until .NET 5/6. (#781)" (#841) * dotnet/java-interop@23baf0bc: [Java.Interop] Fix NRT warnings introduced by targeting 'net6.0' (#840) * dotnet/java-interop@131c1496: [generator] Fix NRE from return type not consistently set (#834) * dotnet/java-interop@100fffc1: [generator] Ensure "global::" is prepended to generic return casts. (#838) * dotnet/java-interop@9b89e90e: [generator] Ignore types without names (#837) * dotnet/java-interop@0e01fb5d: [Java.Interop.Tools.JavaSource] Merge @return block values (#836)
Error Message or Issue
When visual studio is 16.8.x,my binding library work fine,now i update to 16.9.4,build error.
platform is windows
Version Information
Installed Version: Enterprise
Visual C++ 2019 00433-90000-00004-AA199
Microsoft Visual C++ 2019
.NET Core Debugging with WSL 2 1.0
.NET Core Debugging with WSL 2
ASP.NET and Web Tools 2019 16.9.693.2781
ASP.NET and Web Tools 2019
ASP.NET Core Razor Language Services 16.1.0.2112521+5741df381174d72f08e3632bb99f52e8635b6a1a
Provides languages services for ASP.NET Core Razor.
ASP.NET Web Frameworks and Tools 2019 16.9.693.2781
For additional information, visit https://www.asp.net/
Azure App Service Tools v3.0.0 16.9.693.2781
Azure App Service Tools v3.0.0
Azure Functions and Web Jobs Tools 16.9.693.2781
Azure Functions and Web Jobs Tools
C# Tools 3.9.0-6.21160.10+59eedc33d35754759994155ea2f4e1012a9951e3
C# components used in the IDE. Depending on your project type and settings, a different version of the compiler may be used.
Common Azure Tools 1.10
Provides common services for use by Azure Mobile Services and Microsoft Azure Tools.
Extensibility Message Bus 1.2.6 (master@34d6af2)
Provides common messaging-based MEF services for loosely coupled Visual Studio extension components communication and integration.
IntelliCode Extension 1.0
IntelliCode Visual Studio Extension Detailed Info
Linux Core Dump Debugging 1.0.9.31201
Enables debugging of Linux core dumps.
Microsoft Azure Tools 2.9
Microsoft Azure Tools for Microsoft Visual Studio 2019 - v2.9.40331.1
Microsoft Continuous Delivery Tools for Visual Studio 0.4
Simplifying the configuration of Azure DevOps pipelines from within the Visual Studio IDE.
Microsoft JVM Debugger 1.0
Provides support for connecting the Visual Studio debugger to JDWP compatible Java Virtual Machines
Microsoft Library Manager 2.1.113+g422d40002e.RR
Install client-side libraries easily to any web project
Microsoft MI-Based Debugger 1.0
Provides support for connecting Visual Studio to MI compatible debuggers
Microsoft Visual C++ Wizards 1.0
Microsoft Visual C++ Wizards
Microsoft Visual Studio Tools for Containers 1.1
Develop, run, validate your ASP.NET Core applications in the target environment. F5 your application directly into a container with debugging, or CTRL + F5 to edit & refresh your app without having to rebuild the container.
Microsoft Visual Studio VC Package 1.0
Microsoft Visual Studio VC Package
Mono Debugging for Visual Studio 16.9.7 (df23ba6)
Support for debugging Mono processes with Visual Studio.
NuGet Package Manager 5.9.0
NuGet Package Manager in Visual Studio. For more information about NuGet, visit https://docs.nuget.org/
ProjectServicesPackage Extension 1.0
ProjectServicesPackage Visual Studio Extension Detailed Info
Snapshot Debugging Extension 1.0
Snapshot Debugging Visual Studio Extension Detailed Info
SQL Server Data Tools 16.0.62103.10080
Microsoft SQL Server Data Tools
Test Adapter for Boost.Test 1.0
Enables Visual Studio's testing tools with unit tests written for Boost.Test. The use terms and Third Party Notices are available in the extension installation directory.
Test Adapter for Google Test 1.0
Enables Visual Studio's testing tools with unit tests written for Google Test. The use terms and Third Party Notices are available in the extension installation directory.
TypeScript Tools 16.0.30201.2001
TypeScript Tools for Microsoft Visual Studio
Visual Basic Tools 3.9.0-6.21160.10+59eedc33d35754759994155ea2f4e1012a9951e3
Visual Basic components used in the IDE. Depending on your project type and settings, a different version of the compiler may be used.
Visual C++ for Cross Platform Mobile Development (Android) 16.0.31025.194
Visual C++ for Cross Platform Mobile Development (Android)
Visual C++ for Linux Development 1.0.9.31201
Visual C++ for Linux Development
Visual F# Tools 16.9.0-beta.21102.9+7ce7132f1459095e635194d09d6f73265352029a
Microsoft Visual F# Tools
Visual Studio Code Debug Adapter Host Package 1.0
Interop layer for hosting Visual Studio Code debug adapters in Visual Studio
Visual Studio Container Tools Extensions 1.0
View, manage, and diagnose containers within Visual Studio.
Visual Studio Tools for CMake 1.0
Visual Studio Tools for CMake
Visual Studio Tools for Containers 1.0
Visual Studio Tools for Containers
VisualStudio.DeviceLog 1.0
Information about my package
VisualStudio.Foo 1.0
Information about my package
VisualStudio.Mac 1.0
Mac Extension for Visual Studio
VisualSVN 7.2.0
Integration with Subversion version control. For more information about VisualSVN, see the VisualSVN website at https://www.visualsvn.com
Copyright © 2019 VisualSVN Software Ltd. All rights reserved.
Xamarin 16.9.000.273 (d16-9@1bba9e0)
Visual Studio extension to enable development for Xamarin.iOS and Xamarin.Android.
Xamarin Designer 16.9.0.318 (remotes/origin/7b35adcdd1b204bbdcb279e0f029d151a20a4bf3@7b35adcdd)
Visual Studio extension to enable Xamarin Designer tools in Visual Studio.
Xamarin Templates 16.9.72 (426ebf6)
Templates for building iOS, Android, and Windows apps with Xamarin and Xamarin.Forms.
Xamarin.Android SDK 11.2.2.1 (d16-9/877f572)
Xamarin.Android Reference Assemblies and MSBuild support.
Mono: 5e9cb6d
Java.Interop: xamarin/java.interop/d16-9@54f8c24
ProGuard: Guardsquare/proguard@912d149
SQLite: xamarin/sqlite@daff8f4
Xamarin.Android Tools: xamarin/xamarin-android-tools/d16-9@d210f11
Xamarin.iOS and Xamarin.Mac SDK 14.14.2.5 (3836759d4)
Xamarin.iOS and Xamarin.Mac Reference Assemblies and MSBuild support.
Log File
log.txt
Other Helpful Info
The text was updated successfully, but these errors were encountered: