[Mono-dev] mkbundle null reference exception with --deps option

Marek Safar marek.safar at gmail.com
Thu Oct 26 13:25:40 UTC 2017


Hello David,

It'd be nice to figure out which assembly is causing this, you could build
mkbuild from the Mono master with more logging.

Alternatively, please fill a bug report at bugzilla.xamarin.com with the
full repro which could be used to reproduce the issue.

Thank you,
Marek

On Thu, Oct 26, 2017 at 5:03 AM, David Curylo <curylod at asme.org> wrote:

> I found my mkbundle jobs started failing a couple months ago, I believe
> with a switch to mono 5.2.0.224, with this error:
>
> Unhandled Exception:
> System.NullReferenceException: Object reference not set to an instance of
> an object
>   at MakeBundle.QueueAssembly (System.Collections.Generic.List`1[T]
> files, System.String codebase) [0x000bc] in <
> 1eb347299adf445aac66783f3da9ec85>:0
>   at MakeBundle.Main (System.String[] args) [0x00d5f] in <
> 1eb347299adf445aac66783f3da9ec85>:0
>
> I was hoping this would be fixed with 5.4.0.201, but it still seems to
> fail.  I started digging and it seems that having the --deps option can
> cause this exception if certain assemblies are referenced.  I haven’t
> figured out which assemblies, maybe facades?  A simple “hello world” with
> very few dependencies works fine, but something with additional framework
> libraries hits this issue, so I have a “hello world” with the Suave web
> framework, which includes more of the framework in the bundle.
>
> I can reproduce the issue with the following Dockerfile, which will throw
> the exception at the point it tries to make the bundle.  Drop off the
> --deps option and it works fine (albeit I have to be sure to include all
> assemblies or there are runtime errors).  Any idea what is happening with
> --deps here?
>
> FROM mono:5.4.0.201 as builder
> RUN mkdir /src
> RUN echo 'open Suave\n\
> [<EntryPoint>]\n\
> let main argv =\n\
>     startWebServer defaultConfig (Successful.OK "Hello World!")\n\
>     0\n\
> ' > /src/hello.fs
> RUN echo '<Project Sdk="Microsoft.NET.Sdk">\n\
>   <PropertyGroup>\n\
>     <OutputType>Exe</OutputType>\n\
>     <TargetFramework>net462</TargetFramework>\n\
>   </PropertyGroup>\n\
>   <ItemGroup>\n\
>     <Compile Include="hello.fs" />\n\
>   </ItemGroup>\n\
>   <ItemGroup>\n\
>     <PackageReference Include="suave" Version="2.2.1" />\n\
>   </ItemGroup>\n\
> </Project>' > /src/hello.fsproj
> WORKDIR src
> RUN msbuild /t:restore
> RUN msbuild /t:build
> RUN apt-get update && apt-get install -y gcc
> RUN cd bin/Debug/net462 && mkbundle --deps --static --config
> /etc/mono/config -L /usr/lib/mono/4.5 -o hello hello.exe *.dll
> /usr/lib/mono/4.5/mscorlib.dll /usr/lib/mono/4.5/System.dll
>
> _______________________________________________
> Mono-devel-list mailing list
> Mono-devel-list at lists.dot.net
> http://lists.dot.net/mailman/listinfo/mono-devel-list
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.dot.net/pipermail/mono-devel-list/attachments/20171026/d826a003/attachment.html>


More information about the Mono-devel-list mailing list