func runApp(args []string) { if len(args) == 0 { errorf("No import path given.\nRun 'revel help run' for usage.\n") } mode := "dev" if len(args) >= 2 { mode = args[1] } // Find and parse app.conf rev.Init(mode, args[0], "") if len(args) == 3 { // change http.port config rev.Config.SetOption("http.port", args[2]) } log.Printf("Running %s (%s) in %s mode\n", rev.AppName, rev.ImportPath, mode) rev.TRACE.Println("Base path:", rev.BasePath) // If the app is run in "watched" mode, use the harness to run it. if rev.Config.BoolDefault("server.watcher", true) { harness.NewHarness().Run() // Never returns. } // Else, just build and run the app. app, err := harness.Build() if err != nil { errorf("Failed to build app: %s", err) } app.Cmd().Run() }
func runApp(args []string) { if len(args) == 0 { errorf("No import path given.\nRun 'revel help run' for usage.\n") } // Determine the run mode. mode := "dev" if len(args) >= 2 { mode = args[1] } // Find and parse app.conf revel.Init(mode, args[0], "") revel.LoadMimeConfig() // Determine the override port, if any. port := revel.HttpPort if len(args) == 3 { var err error if port, err = strconv.Atoi(args[2]); err != nil { errorf("Failed to parse port as integer: %s", args[2]) } } revel.INFO.Printf("Running %s (%s) in %s mode\n", revel.AppName, revel.ImportPath, mode) revel.TRACE.Println("Base path:", revel.BasePath) // If the app is run in "watched" mode, use the harness to run it. if revel.Config.BoolDefault("watch", true) && revel.Config.BoolDefault("watch.code", true) { revel.HttpPort = port harness.NewHarness().Run() // Never returns. } // Else, just build and run the app. app, err := harness.Build() if err != nil { errorf("Failed to build app: %s", err) } app.Port = port app.Cmd().Run() }