[ https://issues.apache.org/jira/browse/NPANDAY-415?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
John R. Fallows resolved NPANDAY-415. ------------------------------------- Resolution: Fixed Fixed in revision 1140018. > Mono build fails on usage of ambiguous String.split(char[*], int) method > signature > ---------------------------------------------------------------------------------- > > Key: NPANDAY-415 > URL: https://issues.apache.org/jira/browse/NPANDAY-415 > Project: NPanday > Issue Type: Bug > Components: Maven Plugins > Affects Versions: 1.4-incubating > Environment: $ mvn -v > Apache Maven 2.2.1 (rdebian-4) > Java version: 1.6.0_24 > Java home: /usr/lib/jvm/java-6-sun-1.6.0.24/jre > Default locale: en_US, platform encoding: UTF-8 > OS name: "linux" version: "2.6.35-28-generic" arch: "amd64" Family: "unix" > Reporter: John R. Fallows > Labels: mono > Fix For: 1.4.1-incubating > > > When building NPanday.Artifact project with Mono on Linux the following error > is presented. > {code} > [INFO] > /home/jfallows/Workspaces/npanday-trunk/dotnet/assemblies/NPanday.Artifact/target/build-sources/NPanday/Artifact/ArtifactRepository.cs(60,35): > error CS0121: The call is ambiguous between the following methods or > properties: `string.Split(char[*], int)' and `string.Split(char[*], int)' > [INFO] /usr/lib/mono/2.0/mscorlib.dll (Location of the symbol related to > previous error) > Compilation failed: 1 error(s), 51 warnings > [INFO] > ------------------------------------------------------------------------ > [ERROR] BUILD ERROR > [INFO] > ------------------------------------------------------------------------ > [INFO] NPANDAY-900-006: Unable to Compile: Language = C_SHARP, Vendor = null, > ArtifactType = library, Source Directory = > /home/jfallows/Workspaces/npanday-trunk/dotnet/assemblies/NPanday.Artifact/src/main/csharp > Embedded error: NPANDAY-040-001: Could not execute: Command = /bin/sh -c cd > /usr/lib/mono/2.0 && gmcs > @/home/jfallows/Workspaces/npanday-trunk/dotnet/assemblies/NPanday.Artifact/target/1920634/responsefile.rsp, > Result = 1 > {code} > This is caused by method signatures with Enum types being reduced to type int > in Mono, and in this specific case it causes a collision with an existing > String.split method signature that really does have an int parameter. > An example of the code causing the error can be found in > ArtifactRepository.cs, line 60: > {code} > String[] tokens = uri.Split("/".ToCharArray(), > StringSplitOptions.RemoveEmptyEntries); > {code} > A simple fix that keeps the precise meaning of the original code but makes > the method signature unambiguous: > {code} > String[] tokens = uri.Split("/".ToCharArray(), Int32.MaxValue, > StringSplitOptions.RemoveEmptyEntries); > {code} -- This message is automatically generated by JIRA. For more information on JIRA, see: http://www.atlassian.com/software/jira