You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@maven.apache.org by "Leopoldo Agdeppa III (JIRA)" <ji...@codehaus.org> on 2008/03/31 06:02:58 UTC

[jira] Created: (NMAVEN-106) NMaven Service Embedder vs Simple Call of mvn.bat using dotnet System.Diagnostics.Process

NMaven Service Embedder vs Simple Call of mvn.bat using dotnet System.Diagnostics.Process
-----------------------------------------------------------------------------------------

                 Key: NMAVEN-106
                 URL: http://jira.codehaus.org/browse/NMAVEN-106
             Project: NMaven
          Issue Type: Improvement
    Affects Versions: 0.14 (Unreleased)
         Environment: win32
            Reporter: Leopoldo Agdeppa III


the Current way of running nmaven in Visual Studio is through NMaven Service Embedder running on Jetty
and commands are given through SOAP requests,  then the service embedder executes the maven command using 
embedded maven



One problem on this approach is canceling an executed nmaven command in VS
I think using this approach is not too maintainable since you have to maintain to components

One solution is to use System.Diagnostics.Process in VS for running maven commands since mvn.bat is already  adequate for running nmaven commands
in this way we only have to maintain the command executed in the process

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Issue Comment Edited: (NMAVEN-106) NMaven Service Embedder vs Simple Call of mvn.bat using dotnet System.Diagnostics.Process

Posted by "Leopoldo Agdeppa III (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/NMAVEN-106?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=129197#action_129197 ] 

lagdeppa edited comment on NMAVEN-106 at 3/31/08 2:48 AM:
----------------------------------------------------------------------

for the output pane, it won't be much of a problem since we could get it from System.Diagnostics.Process#StandardOutput,  we could also get the Input if need in the future. without any complexity

and as for the NMaven and Maven Initializations, I think its tolerable enough compared to waiting for the service embedder to start and keeping it running while editing codes in VS and not using any maven commands yet.

I think maven embedder is good when you are using java based IDE, but in case of VS, we can just make use of mvn command called directly in VS without
going through extra costs.

this approach will be more maintainable in future features since we will be only maintaining a command string...

I will try to do some benchmarks for this first :) 

      was (Author: lagdeppa):
    for the output pane, it won't be much of a problem since we could get it from System.Diagnostics.Process#StandardOutput,  we could also get the Input if need in the future. without any complexity

and as for the NMaven and Maven Initializations, I think its tolerable enough compared to waiting for the service embedder to start and keeping it running while editing codes in VS and not using any maven commands yet.

I think maven embedder is good when you are using java based IDE, but in case of VS, we can just make use of mvn command called directly in VS without
going through extra costs.

this approach will be more maintainable in future features since we will be only maintaining a command string...

I will try to do some beach marks for this first :) 
  
> NMaven Service Embedder vs Simple Call of mvn.bat using dotnet System.Diagnostics.Process
> -----------------------------------------------------------------------------------------
>
>                 Key: NMAVEN-106
>                 URL: http://jira.codehaus.org/browse/NMAVEN-106
>             Project: NMaven
>          Issue Type: Improvement
>    Affects Versions: 0.14 (Unreleased)
>         Environment: win32
>            Reporter: Leopoldo Agdeppa III
>
> the Current way of running nmaven in Visual Studio is through NMaven Service Embedder running on Jetty
> and commands are given through SOAP requests,  then the service embedder executes the maven command using 
> embedded maven
> One problem on this approach is canceling an executed nmaven command in VS
> I think using this approach is not too maintainable since you have to maintain to components
> One solution is to use System.Diagnostics.Process in VS for running maven commands since mvn.bat is already  adequate for running nmaven commands
> in this way we only have to maintain the command executed in the process

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Updated: (NMAVEN-106) NMaven Service Embedder vs Simple Call of mvn.bat using dotnet System.Diagnostics.Process

Posted by "Brett Porter (JIRA)" <ji...@codehaus.org>.
     [ http://jira.codehaus.org/browse/NMAVEN-106?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Brett Porter updated NMAVEN-106:
--------------------------------

    Fix Version/s: 0.14 (Unreleased)

> NMaven Service Embedder vs Simple Call of mvn.bat using dotnet System.Diagnostics.Process
> -----------------------------------------------------------------------------------------
>
>                 Key: NMAVEN-106
>                 URL: http://jira.codehaus.org/browse/NMAVEN-106
>             Project: NMaven
>          Issue Type: Improvement
>    Affects Versions: 0.14 (Unreleased)
>         Environment: win32
>            Reporter: Leopoldo Agdeppa III
>             Fix For: 0.14 (Unreleased)
>
>         Attachments: vsaddin_fix.zip
>
>
> the Current way of running nmaven in Visual Studio is through NMaven Service Embedder running on Jetty
> and commands are given through SOAP requests,  then the service embedder executes the maven command using 
> embedded maven
> One problem on this approach is canceling an executed nmaven command in VS
> I think using this approach is not too maintainable since you have to maintain to components
> One solution is to use System.Diagnostics.Process in VS for running maven commands since mvn.bat is already  adequate for running nmaven commands
> in this way we only have to maintain the command executed in the process

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Updated: (NMAVEN-106) NMaven Service Embedder vs Simple Call of mvn.bat using dotnet System.Diagnostics.Process

Posted by "Leopoldo Agdeppa III (JIRA)" <ji...@codehaus.org>.
     [ http://jira.codehaus.org/browse/NMAVEN-106?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Leopoldo Agdeppa III updated NMAVEN-106:
----------------------------------------

    Attachment: vsaddin_fix.zip

Attached is a the re-factored code

> NMaven Service Embedder vs Simple Call of mvn.bat using dotnet System.Diagnostics.Process
> -----------------------------------------------------------------------------------------
>
>                 Key: NMAVEN-106
>                 URL: http://jira.codehaus.org/browse/NMAVEN-106
>             Project: NMaven
>          Issue Type: Improvement
>    Affects Versions: 0.14 (Unreleased)
>         Environment: win32
>            Reporter: Leopoldo Agdeppa III
>         Attachments: vsaddin_fix.zip
>
>
> the Current way of running nmaven in Visual Studio is through NMaven Service Embedder running on Jetty
> and commands are given through SOAP requests,  then the service embedder executes the maven command using 
> embedded maven
> One problem on this approach is canceling an executed nmaven command in VS
> I think using this approach is not too maintainable since you have to maintain to components
> One solution is to use System.Diagnostics.Process in VS for running maven commands since mvn.bat is already  adequate for running nmaven commands
> in this way we only have to maintain the command executed in the process

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Commented: (NMAVEN-106) NMaven Service Embedder vs Simple Call of mvn.bat using dotnet System.Diagnostics.Process

Posted by "Leopoldo Agdeppa III (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/NMAVEN-106?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=129266#action_129266 ] 

Leopoldo Agdeppa III commented on NMAVEN-106:
---------------------------------------------

The Refactor came out well, and its build time is just the same as the soap service, and has improved the performance, no more waiting for jetty to run, 
and no more service running while not needed, 
maven executions are sandboxed in a different process, this means no collision when building many projects 


> NMaven Service Embedder vs Simple Call of mvn.bat using dotnet System.Diagnostics.Process
> -----------------------------------------------------------------------------------------
>
>                 Key: NMAVEN-106
>                 URL: http://jira.codehaus.org/browse/NMAVEN-106
>             Project: NMaven
>          Issue Type: Improvement
>    Affects Versions: 0.14 (Unreleased)
>         Environment: win32
>            Reporter: Leopoldo Agdeppa III
>
> the Current way of running nmaven in Visual Studio is through NMaven Service Embedder running on Jetty
> and commands are given through SOAP requests,  then the service embedder executes the maven command using 
> embedded maven
> One problem on this approach is canceling an executed nmaven command in VS
> I think using this approach is not too maintainable since you have to maintain to components
> One solution is to use System.Diagnostics.Process in VS for running maven commands since mvn.bat is already  adequate for running nmaven commands
> in this way we only have to maintain the command executed in the process

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Commented: (NMAVEN-106) NMaven Service Embedder vs Simple Call of mvn.bat using dotnet System.Diagnostics.Process

Posted by "Shane Isbell (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/NMAVEN-106?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=129191#action_129191 ] 

Shane Isbell commented on NMAVEN-106:
-------------------------------------

One of the primary reasons for hosting the service on Jetty is for performance. By running NMaven continually in a long running process, you get the advantage of JIT optimizations, as well as one time startup costs of both Maven and NMaven. Also keep in mind that the VS output pane needs to read in the Maven console output, so a socket connection needs to be established between the VS and the embedder. If you run NMaven through System.Diagnostics.Process then you take the hit everytime you build the project.

I think it would be possible to add an additional SOAP command that would directly stop the embedder.

> NMaven Service Embedder vs Simple Call of mvn.bat using dotnet System.Diagnostics.Process
> -----------------------------------------------------------------------------------------
>
>                 Key: NMAVEN-106
>                 URL: http://jira.codehaus.org/browse/NMAVEN-106
>             Project: NMaven
>          Issue Type: Improvement
>    Affects Versions: 0.14 (Unreleased)
>         Environment: win32
>            Reporter: Leopoldo Agdeppa III
>
> the Current way of running nmaven in Visual Studio is through NMaven Service Embedder running on Jetty
> and commands are given through SOAP requests,  then the service embedder executes the maven command using 
> embedded maven
> One problem on this approach is canceling an executed nmaven command in VS
> I think using this approach is not too maintainable since you have to maintain to components
> One solution is to use System.Diagnostics.Process in VS for running maven commands since mvn.bat is already  adequate for running nmaven commands
> in this way we only have to maintain the command executed in the process

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Commented: (NMAVEN-106) NMaven Service Embedder vs Simple Call of mvn.bat using dotnet System.Diagnostics.Process

Posted by "Leopoldo Agdeppa III (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/NMAVEN-106?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=129197#action_129197 ] 

Leopoldo Agdeppa III commented on NMAVEN-106:
---------------------------------------------

for the output pane, it won't be much of a problem since we could get it from System.Diagnostics.Process#StandardOutput,  we could also get the Input if need in the future. without any complexity

and as for the NMaven and Maven Initializations, I think its tolerable enough compared to waiting for the service embedder to start and keeping it running while editing codes in VS and not using any maven commands yet.

I think maven embedder is good when you are using java based IDE, but in case of VS, we can just make use of mvn command called directly in VS without
going through extra costs.

this approach will be more maintainable in future features since we will be only maintaining a command string...

I will try to do some beach marks for this first :) 

> NMaven Service Embedder vs Simple Call of mvn.bat using dotnet System.Diagnostics.Process
> -----------------------------------------------------------------------------------------
>
>                 Key: NMAVEN-106
>                 URL: http://jira.codehaus.org/browse/NMAVEN-106
>             Project: NMaven
>          Issue Type: Improvement
>    Affects Versions: 0.14 (Unreleased)
>         Environment: win32
>            Reporter: Leopoldo Agdeppa III
>
> the Current way of running nmaven in Visual Studio is through NMaven Service Embedder running on Jetty
> and commands are given through SOAP requests,  then the service embedder executes the maven command using 
> embedded maven
> One problem on this approach is canceling an executed nmaven command in VS
> I think using this approach is not too maintainable since you have to maintain to components
> One solution is to use System.Diagnostics.Process in VS for running maven commands since mvn.bat is already  adequate for running nmaven commands
> in this way we only have to maintain the command executed in the process

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

[jira] Commented: (NMAVEN-106) NMaven Service Embedder vs Simple Call of mvn.bat using dotnet System.Diagnostics.Process

Posted by "Wendy Smoak (JIRA)" <ji...@codehaus.org>.
    [ http://jira.codehaus.org/browse/NMAVEN-106?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=129229#action_129229 ] 

Wendy Smoak commented on NMAVEN-106:
------------------------------------

IMO this seems like more of a discussion topic for the dev list than a JIRA issue just yet...

> NMaven Service Embedder vs Simple Call of mvn.bat using dotnet System.Diagnostics.Process
> -----------------------------------------------------------------------------------------
>
>                 Key: NMAVEN-106
>                 URL: http://jira.codehaus.org/browse/NMAVEN-106
>             Project: NMaven
>          Issue Type: Improvement
>    Affects Versions: 0.14 (Unreleased)
>         Environment: win32
>            Reporter: Leopoldo Agdeppa III
>
> the Current way of running nmaven in Visual Studio is through NMaven Service Embedder running on Jetty
> and commands are given through SOAP requests,  then the service embedder executes the maven command using 
> embedded maven
> One problem on this approach is canceling an executed nmaven command in VS
> I think using this approach is not too maintainable since you have to maintain to components
> One solution is to use System.Diagnostics.Process in VS for running maven commands since mvn.bat is already  adequate for running nmaven commands
> in this way we only have to maintain the command executed in the process

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira