Author: brett
Date: Thu Mar 20 07:54:24 2014
New Revision: 1579555
URL: http://svn.apache.org/r1579555
Log:
fully support configurations in MSBuild plugin
Modified:
incubator/npanday/trunk/dotnet/assemblies/NPanday.Plugin/src/main/csharp/AbstractMojo.cs
incubator/npanday/trunk/plugins/netplugins/NPanday.Plugin.Msbuild/javabinding/src/main/java/NPanday/Plugin/Msbuild/MsbuildMojo.java
incubator/npanday/trunk/plugins/netplugins/NPanday.Plugin.Msbuild/src/main/csharp/NPanday/Plugin/Msbuild/MsbuildMojo.cs
Modified:
incubator/npanday/trunk/dotnet/assemblies/NPanday.Plugin/src/main/csharp/AbstractMojo.cs
URL:
http://svn.apache.org/viewvc/incubator/npanday/trunk/dotnet/assemblies/NPanday.Plugin/src/main/csharp/AbstractMojo.cs?rev=1579555&r1=1579554&r2=1579555&view=diff
==============================================================================
---
incubator/npanday/trunk/dotnet/assemblies/NPanday.Plugin/src/main/csharp/AbstractMojo.cs
(original)
+++
incubator/npanday/trunk/dotnet/assemblies/NPanday.Plugin/src/main/csharp/AbstractMojo.cs
Thu Mar 20 07:54:24 2014
@@ -50,14 +50,18 @@ namespace NPanday.Plugin
FieldInjectorRepository fieldInjectorRepository = new
FieldInjectorRepository();
while(reader.Read() == true)
- {
- FieldInfo fieldInfo =
GetFieldInfoFor(this.GetMojoImplementationType(), reader.Name);
- if(fieldInfo != null)
- {
- IFieldInjector fieldInjector =
fieldInjectorRepository.getFieldInjectorFor(fieldInfo);
- fieldInjector.Inject(this, fieldInfo,
reader.ReadString() );
- }
- }
+ {
+ // skip root element
+ if (reader.Depth > 0)
+ {
+ FieldInfo fieldInfo =
GetFieldInfoFor(this.GetMojoImplementationType(), reader.Name);
+ if(fieldInfo != null)
+ {
+ IFieldInjector fieldInjector =
fieldInjectorRepository.getFieldInjectorFor(fieldInfo);
+ fieldInjector.Inject(this, fieldInfo,
reader.ReadString() );
+ }
+ }
+ }
}
// public List<JavaClass> CreateJavaClassesForPlugin()
Modified:
incubator/npanday/trunk/plugins/netplugins/NPanday.Plugin.Msbuild/javabinding/src/main/java/NPanday/Plugin/Msbuild/MsbuildMojo.java
URL:
http://svn.apache.org/viewvc/incubator/npanday/trunk/plugins/netplugins/NPanday.Plugin.Msbuild/javabinding/src/main/java/NPanday/Plugin/Msbuild/MsbuildMojo.java?rev=1579555&r1=1579554&r2=1579555&view=diff
==============================================================================
---
incubator/npanday/trunk/plugins/netplugins/NPanday.Plugin.Msbuild/javabinding/src/main/java/NPanday/Plugin/Msbuild/MsbuildMojo.java
(original)
+++
incubator/npanday/trunk/plugins/netplugins/NPanday.Plugin.Msbuild/javabinding/src/main/java/NPanday/Plugin/Msbuild/MsbuildMojo.java
Thu Mar 20 07:54:24 2014
@@ -106,9 +106,10 @@ public class MsbuildMojo
private File referencesDirectory;
/**
- * @parameter default-value="Debug"
+ * @parameter expression="${msbuild.configuration}" default-value="Debug"
*/
- private String configuration;
+ @FieldAnnotation()
+ public String configuration;
/**
* @parameter
@@ -253,8 +254,8 @@ public class MsbuildMojo
// Likely a project reference in MSBuild.
// If the other project was not built with MSBuild, make
sure the artifact is present where it will look for it
// Note: deliberately limited for now - will only work
with reactor projects and doesn't test what are references and what are not
- // TODO: support other configurations, or more aligned
MSBuild-based builds
- targetDir = new File( projects.get( vKey ).getBasedir(),
"bin/Debug" );
+ File binDir = new File( projects.get( vKey ).getBasedir(),
"bin" );
+ targetDir = new File( binDir, configuration );
}
File targetFile = new File( targetDir, a.getArtifactId() + "."
+ a.getArtifactHandler().getExtension() );
Modified:
incubator/npanday/trunk/plugins/netplugins/NPanday.Plugin.Msbuild/src/main/csharp/NPanday/Plugin/Msbuild/MsbuildMojo.cs
URL:
http://svn.apache.org/viewvc/incubator/npanday/trunk/plugins/netplugins/NPanday.Plugin.Msbuild/src/main/csharp/NPanday/Plugin/Msbuild/MsbuildMojo.cs?rev=1579555&r1=1579554&r2=1579555&view=diff
==============================================================================
---
incubator/npanday/trunk/plugins/netplugins/NPanday.Plugin.Msbuild/src/main/csharp/NPanday/Plugin/Msbuild/MsbuildMojo.cs
(original)
+++
incubator/npanday/trunk/plugins/netplugins/NPanday.Plugin.Msbuild/src/main/csharp/NPanday/Plugin/Msbuild/MsbuildMojo.cs
Thu Mar 20 07:54:24 2014
@@ -50,6 +50,9 @@ namespace NPanday.Plugin.Msbuild
[FieldAttribute("extraArguments", Expression =
"${msbuild.extraArguments}", Type = "java.lang.String")]
public string extraArguments;
+ [FieldAttribute("configuration", Expression =
"${msbuild.configuration}", Type = "java.lang.String")]
+ public string configuration;
+
public override Type GetMojoImplementationType()
{
return this.GetType();
@@ -81,6 +84,10 @@ namespace NPanday.Plugin.Msbuild
// erroneously triggers the NPANDAY-063-001 error
// BuildingInsideVisualStudio is required to avoid building
project references on framework 2.0
string args = "/v:q /p:BuildProjectReferences=false
/p:BuildingInsideVisualStudio=true";
+ if (!string.IsNullOrEmpty(configuration))
+ {
+ args += " /p:Configuration=" + configuration;
+ }
if (!string.IsNullOrEmpty(extraArguments))
{
args += " " + extraArguments;