On 26/09/2008, at 1:05 PM, Wendy Smoak wrote:
> Coming back to this with some revisions... comments appreciated,
> particularly in the area of the "nested" project-within-project
> structure.
>
> This is what you get if you leave the "Create directory for solution"
> checkbox un-checked when creating a solution in Visual Studio, and
> then add another project to it. You end up with source code in the
> top directory as well as in the sub-directory.
>
> What 'type' do you put in the top-level pom? If it's 'exe' then you
> can't have <modules>. If it's 'pom' then you can't compile the source
> and build an artifact.
>
> Is this something NMaven should attempt to support? To what extent?
If it works equally well under both structures for Visual Studio, I
don't believe it should be supported. It is a very unnatural fit for a
Maven project - the additional complexity would not be of any benefit.
>
> The following directory structures should be supported by NMaven
>
> 1. Typical Maven single-module structure, single pom with separate
> source trees for code and tests.
>
> 2. Typical Maven multi-module structure, parent pom with modules,
> subdirectories for modules, each module containing source and tests as
> in 1.
are these the src/main/csharp | src/test/csharp (or other language)
equivalents?
>
>
> 3. Visual Studio flat structure with .sln, .csproj and source code all
> in the same directory. Source code is not typically put in a
> subdirectory under the module, but it might be. If present, NUnit test
> code should be in a directory named "Tests", which is not packaged in
> the main artifact. See note below about "nested" projects. The "flat"
> structure is only supported as a single project with no sub-modules.
>
> 4. Visual Studio multi-module solution with a parent pom containing
> modules, then a subdirectory for each module, which equates to a VS
> "project". The .sln file sits beside the parent pom, and each
> subdirectory contains a .csproj, pom.xml and source code. Source code
> is not typically put in a subdirectory under the module, but it might
> be. NUnit test code may be within each module in a directory named
> "Tests", or it may be in a separate module.
+1
Given this is probably the near-ubiquitous set up, should these be the
default, and (1) and (2) be supported? (as would any configuration of
alternate source / test paths, really - like in Java). From what I've
seen of trunk this seems to be the case already there.
Cheers,
Brett
--
Brett Porter
brett@...
http://blogs.exist.com/bporter/