You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@buildr.apache.org by "Antoine Toulme (JIRA)" <ji...@apache.org> on 2016/05/20 06:31:12 UTC

[jira] [Resolved] (BUILDR-607) Java Process Forking

     [ https://issues.apache.org/jira/browse/BUILDR-607?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Antoine Toulme resolved BUILDR-607.
-----------------------------------
    Resolution: Cannot Reproduce

Closing. Cannot reproduce, and no activity for some time.

> Java Process Forking
> --------------------
>
>                 Key: BUILDR-607
>                 URL: https://issues.apache.org/jira/browse/BUILDR-607
>             Project: Buildr
>          Issue Type: Bug
>          Components: Core features
>    Affects Versions: 1.4.6
>            Reporter: Ian Nowland
>             Fix For: 1.5
>
>
> While running a simple test with a buildr-scala-JERSEY-JETTY setup, the java process is forking, such that printlns are not going to the console the process was started in, and killing that process does not kill the jetty server. It's certainly not a blocker, but it is annoying.
> Here's the buildfile (sorry I can't attach it as a file to download for the issue):
> ***************************************************************************
> require 'buildr/scala'
> repositories.remote << 'http://www.ibiblio.org/maven2'
> repositories.remote << 'http://download.java.net/maven/2'
> repositories.remote << 'http://download.java.net/maven/glassfish'
> SERVLET = ['org.glassfish:javax.servlet:jar:3.0','javax.persistence:persistence-api:jar:1.0']
> JERSEY = ['com.sun.jersey:jersey-json:jar:1.8','com.sun.jersey:jersey-server:jar:1.8','com.sun.jersey:jersey-core:jar:1.8','com.sun.jersey:jersey-bundle:jar:1.8']
> JETTY = ['org.eclipse.jetty:jetty-continuation:jar:8.0.0.M0','org.eclipse.jetty:jetty-security:jar:8.0.0.M0','org.eclipse.jetty:jetty-http:jar:8.0.0.M0','org.eclipse.jetty:jetty-io:jar:8.0.0.M0','org.eclipse.jetty:jetty-util:jar:8.0.0.M0','org.eclipse.jetty:jetty-server:jar:8.0.0.M0','org.eclipse.jetty:jetty-servlet:jar:8.0.0.M0']
> ASM = ['asm:asm-all:jar:3.3.1']
> VERSION_NUMBER = '0.1'
> GROUP = 'test'
> define "testproject" do
>   project.version = VERSION_NUMBER
>   project.group = GROUP
>   compile.with ASM,SERVLET,JERSEY,JETTY
>   task :run => :compile do
>         puts('Starting up with classpath ' + compile.dependencies.to_s + " " + [compile.target.to_s].to_s)
>         Java::Commands.java('launcher.MyServer', :classpath => compile.dependencies + [compile.target.to_s])
>   end
>   package(:jar).with :manifest=>manifest.merge('Main-Class'=>'launcher.MyServer')
> end
> ***************************************************************************
> Here is launcher.scala:
> package launcher
> import javax.servlet.http.{HttpServletRequest, HttpServletResponse}
> import javax.servlet.ServletException
> import java.io.IOException
> import org.eclipse.jetty.server.{Server, Request}
> import org.eclipse.jetty.server.handler.AbstractHandler
> import org.eclipse.jetty.server.nio.SelectChannelConnector
> import org.eclipse.jetty.servlet.{ServletHolder, ServletContextHandler}
> import com.sun.jersey.spi.container.servlet.ServletContainer
> import javax.ws.rs.{GET, Produces, Path}
> object MyServer {
>   def main(args: Array[String]) {
>     System.out.println("Starting up server")
>     val server = new Server(3080)
>     val connector = new SelectChannelConnector()
>     server.addConnector(connector)
>     val holder:ServletHolder = new ServletHolder(classOf[ServletContainer])
>     holder.setInitParameter("com.sun.jersey.config.property.resourceConfigClass",
>                             "com.sun.jersey.api.core.PackagesResourceConfig")
>     holder.setInitParameter("com.sun.jersey.config.property.packages",
>                             "com.sample")
>     val context = new ServletContextHandler(server, "/", ServletContextHandler.SESSIONS)
>     context.addServlet(holder, "/*")
>     server.start
>     server.join
>   }
> }
> *******************************************************************************
> And here is com.sample.Ping.scala:
> package com.sample
> import javax.ws.rs.{GET, Produces, Path, PUT}
> @Path("/")
> class PingResource {
>   @GET
>   def ping() = {
>     "ping"
>   }
>   @PUT
>   def ping(input:String) = {
>     input
>   }
> }



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)