mirror of
				https://github.com/beego/bee.git
				synced 2025-10-31 12:33:21 +00:00 
			
		
		
		
	fix api hprose project
This commit is contained in:
		| @@ -16,8 +16,10 @@ package apiapp | |||||||
|  |  | ||||||
| import ( | import ( | ||||||
| 	"fmt" | 	"fmt" | ||||||
|  | 	"github.com/beego/bee/logger/colors" | ||||||
| 	"os" | 	"os" | ||||||
| 	path "path/filepath" | 	path "path/filepath" | ||||||
|  | 	"runtime" | ||||||
| 	"strings" | 	"strings" | ||||||
|  |  | ||||||
| 	"github.com/beego/bee/cmd/commands" | 	"github.com/beego/bee/cmd/commands" | ||||||
| @@ -35,7 +37,7 @@ var CmdApiapp = &commands.Command{ | |||||||
|   The command 'api' creates a Beego API application. |   The command 'api' creates a Beego API application. | ||||||
|  |  | ||||||
|   {{"Example:"|bold}} |   {{"Example:"|bold}} | ||||||
|       $ bee api [appname] [-tables=""] [-driver=mysql] [-conn="root:@tcp(127.0.0.1:3306)/test"] |       $ bee api [appname] [-tables=""] [-driver=mysql] [-conn="root:@tcp(127.0.0.1:3306)/test"]  [-module=true] [-beego=v1.12.1] | ||||||
|  |  | ||||||
|   If 'conn' argument is empty, the command will generate an example API application. Otherwise the command |   If 'conn' argument is empty, the command will generate an example API application. Otherwise the command | ||||||
|   will connect to your database and generate models based on the existing tables. |   will connect to your database and generate models based on the existing tables. | ||||||
| @@ -43,6 +45,7 @@ var CmdApiapp = &commands.Command{ | |||||||
|   The command 'api' creates a folder named [appname] with the following structure: |   The command 'api' creates a folder named [appname] with the following structure: | ||||||
|  |  | ||||||
| 	    ├── main.go | 	    ├── main.go | ||||||
|  | 		├── go.mod | ||||||
| 	    ├── {{"conf"|foldername}} | 	    ├── {{"conf"|foldername}} | ||||||
| 	    │     └── app.conf | 	    │     └── app.conf | ||||||
| 	    ├── {{"controllers"|foldername}} | 	    ├── {{"controllers"|foldername}} | ||||||
| @@ -103,6 +106,13 @@ func main() { | |||||||
| 	beego.Run() | 	beego.Run() | ||||||
| } | } | ||||||
|  |  | ||||||
|  | ` | ||||||
|  | var goMod = ` | ||||||
|  | module %s | ||||||
|  |  | ||||||
|  | go %s | ||||||
|  |  | ||||||
|  | require github.com/astaxie/beego %s | ||||||
| ` | ` | ||||||
|  |  | ||||||
| var apirouter = `// @APIVersion 1.0.0 | var apirouter = `// @APIVersion 1.0.0 | ||||||
| @@ -533,11 +543,15 @@ func TestGet(t *testing.T) { | |||||||
| } | } | ||||||
|  |  | ||||||
| ` | ` | ||||||
|  | var module utils.DocValue | ||||||
|  | var beegoVersion utils.DocValue | ||||||
|  |  | ||||||
| func init() { | func init() { | ||||||
| 	CmdApiapp.Flag.Var(&generate.Tables, "tables", "List of table names separated by a comma.") | 	CmdApiapp.Flag.Var(&generate.Tables, "tables", "List of table names separated by a comma.") | ||||||
| 	CmdApiapp.Flag.Var(&generate.SQLDriver, "driver", "Database driver. Either mysql, postgres or sqlite.") | 	CmdApiapp.Flag.Var(&generate.SQLDriver, "driver", "Database driver. Either mysql, postgres or sqlite.") | ||||||
| 	CmdApiapp.Flag.Var(&generate.SQLConn, "conn", "Connection string used by the driver to connect to a database instance.") | 	CmdApiapp.Flag.Var(&generate.SQLConn, "conn", "Connection string used by the driver to connect to a database instance.") | ||||||
|  | 	CmdApiapp.Flag.Var(&module, "module", "Support go modules") | ||||||
|  | 	CmdApiapp.Flag.Var(&beegoVersion, "beego", "set beego version,only take effect by -module=true") | ||||||
| 	commands.AvailableCommands = append(commands.AvailableCommands, CmdApiapp) | 	commands.AvailableCommands = append(commands.AvailableCommands, CmdApiapp) | ||||||
| } | } | ||||||
|  |  | ||||||
| @@ -548,14 +562,38 @@ func createAPI(cmd *commands.Command, args []string) int { | |||||||
| 		beeLogger.Log.Fatal("Argument [appname] is missing") | 		beeLogger.Log.Fatal("Argument [appname] is missing") | ||||||
| 	} | 	} | ||||||
|  |  | ||||||
| 	if len(args) > 1 { | 	if len(args) >= 2 { | ||||||
| 		err := cmd.Flag.Parse(args[1:]) | 		cmd.Flag.Parse(args[1:]) | ||||||
|  | 	} else { | ||||||
|  | 		module = "false" | ||||||
|  | 	} | ||||||
|  | 	appPath := `` | ||||||
|  | 	packPath := `` | ||||||
|  | 	var err error | ||||||
|  | 	if module != `true` { | ||||||
|  | 		beeLogger.Log.Info("generate api project support GOPATH") | ||||||
|  | 		version.ShowShortVersionBanner() | ||||||
|  | 		appPath, packPath, err = utils.CheckEnv(args[0]) | ||||||
| 		if err != nil { | 		if err != nil { | ||||||
| 			beeLogger.Log.Error(err.Error()) | 			beeLogger.Log.Fatalf("%s", err) | ||||||
|  | 		} | ||||||
|  | 	} else { | ||||||
|  | 		beeLogger.Log.Info("generate api project support go modules.") | ||||||
|  | 		appPath = path.Join(utils.GetBeeWorkPath(), args[0]) | ||||||
|  | 		packPath = args[0] | ||||||
|  | 		if beegoVersion.String() == `` { | ||||||
|  | 			beegoVersion.Set(`v1.12.1`) | ||||||
|  | 		} | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	if utils.IsExist(appPath) { | ||||||
|  | 		beeLogger.Log.Errorf(colors.Bold("Application '%s' already exists"), appPath) | ||||||
|  | 		beeLogger.Log.Warn(colors.Bold("Do you want to overwrite it? [Yes|No] ")) | ||||||
|  | 		if !utils.AskForConfirmation() { | ||||||
|  | 			os.Exit(2) | ||||||
| 		} | 		} | ||||||
| 	} | 	} | ||||||
|  |  | ||||||
| 	appPath, packPath, err := utils.CheckEnv(args[0]) |  | ||||||
| 	appName := path.Base(args[0]) | 	appName := path.Base(args[0]) | ||||||
| 	if err != nil { | 	if err != nil { | ||||||
| 		beeLogger.Log.Fatalf("%s", err) | 		beeLogger.Log.Fatalf("%s", err) | ||||||
| @@ -567,6 +605,10 @@ func createAPI(cmd *commands.Command, args []string) int { | |||||||
| 	beeLogger.Log.Info("Creating API...") | 	beeLogger.Log.Info("Creating API...") | ||||||
|  |  | ||||||
| 	os.MkdirAll(appPath, 0755) | 	os.MkdirAll(appPath, 0755) | ||||||
|  | 	if module == `true` { //generate first for calc model name | ||||||
|  | 		fmt.Fprintf(output, "\t%s%screate%s\t %s%s\n", "\x1b[32m", "\x1b[1m", "\x1b[21m", path.Join(appPath, "go.mod"), "\x1b[0m") | ||||||
|  | 		utils.WriteToFile(path.Join(appPath, "go.mod"), fmt.Sprintf(goMod, packPath, runtime.Version()[2:], beegoVersion.String())) | ||||||
|  | 	} | ||||||
| 	fmt.Fprintf(output, "\t%s%screate%s\t %s%s\n", "\x1b[32m", "\x1b[1m", "\x1b[21m", appPath, "\x1b[0m") | 	fmt.Fprintf(output, "\t%s%screate%s\t %s%s\n", "\x1b[32m", "\x1b[1m", "\x1b[21m", appPath, "\x1b[0m") | ||||||
| 	os.Mkdir(path.Join(appPath, "conf"), 0755) | 	os.Mkdir(path.Join(appPath, "conf"), 0755) | ||||||
| 	fmt.Fprintf(output, "\t%s%screate%s\t %s%s\n", "\x1b[32m", "\x1b[1m", "\x1b[21m", path.Join(appPath, "conf"), "\x1b[0m") | 	fmt.Fprintf(output, "\t%s%screate%s\t %s%s\n", "\x1b[32m", "\x1b[1m", "\x1b[21m", path.Join(appPath, "conf"), "\x1b[0m") | ||||||
|   | |||||||
| @@ -1,7 +1,9 @@ | |||||||
| package hprose | package hprose | ||||||
|  |  | ||||||
| import ( | import ( | ||||||
|  | 	"github.com/beego/bee/logger/colors" | ||||||
| 	"os" | 	"os" | ||||||
|  | 	"runtime" | ||||||
|  |  | ||||||
| 	"fmt" | 	"fmt" | ||||||
| 	"path" | 	"path" | ||||||
| @@ -11,7 +13,7 @@ import ( | |||||||
| 	"github.com/beego/bee/cmd/commands/api" | 	"github.com/beego/bee/cmd/commands/api" | ||||||
| 	"github.com/beego/bee/cmd/commands/version" | 	"github.com/beego/bee/cmd/commands/version" | ||||||
| 	"github.com/beego/bee/generate" | 	"github.com/beego/bee/generate" | ||||||
| 	beeLogger "github.com/beego/bee/logger" | 	"github.com/beego/bee/logger" | ||||||
| 	"github.com/beego/bee/utils" | 	"github.com/beego/bee/utils" | ||||||
| ) | ) | ||||||
|  |  | ||||||
| @@ -24,7 +26,7 @@ var CmdHproseapp = &commands.Command{ | |||||||
|  |  | ||||||
|   {{"To scaffold out your application, use:"|bold}} |   {{"To scaffold out your application, use:"|bold}} | ||||||
|  |  | ||||||
|       $ bee hprose [appname] [-tables=""] [-driver=mysql] [-conn="root:@tcp(127.0.0.1:3306)/test"] |       $ bee hprose [appname] [-tables=""] [-driver=mysql] [-conn="root:@tcp(127.0.0.1:3306)/test"] [-module=true] [-beego=v1.12.1]  | ||||||
|  |  | ||||||
|   If 'conn' is empty, the command will generate a sample application. Otherwise the command |   If 'conn' is empty, the command will generate a sample application. Otherwise the command | ||||||
|   will connect to your database and generate models based on the existing tables. |   will connect to your database and generate models based on the existing tables. | ||||||
| @@ -32,6 +34,7 @@ var CmdHproseapp = &commands.Command{ | |||||||
|   The command 'hprose' creates a folder named [appname] with the following structure: |   The command 'hprose' creates a folder named [appname] with the following structure: | ||||||
|  |  | ||||||
| 	    ├── main.go | 	    ├── main.go | ||||||
|  | 		├── go.mod | ||||||
| 	    ├── {{"conf"|foldername}} | 	    ├── {{"conf"|foldername}} | ||||||
| 	    │     └── app.conf | 	    │     └── app.conf | ||||||
| 	    └── {{"models"|foldername}} | 	    └── {{"models"|foldername}} | ||||||
| @@ -42,10 +45,23 @@ var CmdHproseapp = &commands.Command{ | |||||||
| 	Run:    createhprose, | 	Run:    createhprose, | ||||||
| } | } | ||||||
|  |  | ||||||
|  | var goMod = ` | ||||||
|  | module %s | ||||||
|  |  | ||||||
|  | go %s | ||||||
|  |  | ||||||
|  | require github.com/astaxie/beego %s | ||||||
|  | ` | ||||||
|  |  | ||||||
|  | var module utils.DocValue | ||||||
|  | var beegoVersion utils.DocValue | ||||||
|  |  | ||||||
| func init() { | func init() { | ||||||
| 	CmdHproseapp.Flag.Var(&generate.Tables, "tables", "List of table names separated by a comma.") | 	CmdHproseapp.Flag.Var(&generate.Tables, "tables", "List of table names separated by a comma.") | ||||||
| 	CmdHproseapp.Flag.Var(&generate.SQLDriver, "driver", "Database driver. Either mysql, postgres or sqlite.") | 	CmdHproseapp.Flag.Var(&generate.SQLDriver, "driver", "Database driver. Either mysql, postgres or sqlite.") | ||||||
| 	CmdHproseapp.Flag.Var(&generate.SQLConn, "conn", "Connection string used by the driver to connect to a database instance.") | 	CmdHproseapp.Flag.Var(&generate.SQLConn, "conn", "Connection string used by the driver to connect to a database instance.") | ||||||
|  | 	CmdHproseapp.Flag.Var(&module, "module", "Support go modules") | ||||||
|  | 	CmdHproseapp.Flag.Var(&beegoVersion, "beego", "set beego version,only take effect by -module=true") | ||||||
| 	commands.AvailableCommands = append(commands.AvailableCommands, CmdHproseapp) | 	commands.AvailableCommands = append(commands.AvailableCommands, CmdHproseapp) | ||||||
| } | } | ||||||
|  |  | ||||||
| @@ -60,16 +76,49 @@ func createhprose(cmd *commands.Command, args []string) int { | |||||||
| 	if len(args) > 1 { | 	if len(args) > 1 { | ||||||
| 		cmd.Flag.Parse(args[1:]) | 		cmd.Flag.Parse(args[1:]) | ||||||
| 	} | 	} | ||||||
| 	apppath, packpath, err := utils.CheckEnv(args[0]) |  | ||||||
| 	if err != nil { | 	if len(args) >= 2 { | ||||||
| 		beeLogger.Log.Fatalf("%s", err) | 		cmd.Flag.Parse(args[1:]) | ||||||
|  | 	} else { | ||||||
|  | 		module = "false" | ||||||
| 	} | 	} | ||||||
|  | 	apppath := `` | ||||||
|  | 	packpath := `` | ||||||
|  | 	var err error | ||||||
|  | 	if module != `true` { | ||||||
|  | 		beeLogger.Log.Info("generate api project support GOPATH") | ||||||
|  | 		version.ShowShortVersionBanner() | ||||||
|  | 		apppath, packpath, err = utils.CheckEnv(args[0]) | ||||||
|  | 		if err != nil { | ||||||
|  | 			beeLogger.Log.Fatalf("%s", err) | ||||||
|  | 		} | ||||||
|  | 	} else { | ||||||
|  | 		beeLogger.Log.Info("generate api project support go modules.") | ||||||
|  | 		apppath = path.Join(utils.GetBeeWorkPath(), args[0]) | ||||||
|  | 		packpath = args[0] | ||||||
|  | 		if beegoVersion.String() == `` { | ||||||
|  | 			beegoVersion.Set(`v1.12.1`) | ||||||
|  | 		} | ||||||
|  | 	} | ||||||
|  |  | ||||||
|  | 	if utils.IsExist(apppath) { | ||||||
|  | 		beeLogger.Log.Errorf(colors.Bold("Application '%s' already exists"), apppath) | ||||||
|  | 		beeLogger.Log.Warn(colors.Bold("Do you want to overwrite it? [Yes|No] ")) | ||||||
|  | 		if !utils.AskForConfirmation() { | ||||||
|  | 			os.Exit(2) | ||||||
|  | 		} | ||||||
|  | 	} | ||||||
|  |  | ||||||
| 	if generate.SQLDriver == "" { | 	if generate.SQLDriver == "" { | ||||||
| 		generate.SQLDriver = "mysql" | 		generate.SQLDriver = "mysql" | ||||||
| 	} | 	} | ||||||
| 	beeLogger.Log.Info("Creating Hprose application...") | 	beeLogger.Log.Info("Creating Hprose application...") | ||||||
|  |  | ||||||
| 	os.MkdirAll(apppath, 0755) | 	os.MkdirAll(apppath, 0755) | ||||||
|  | 	if module == `true` { //generate first for calc model name | ||||||
|  | 		fmt.Fprintf(output, "\t%s%screate%s\t %s%s\n", "\x1b[32m", "\x1b[1m", "\x1b[21m", path.Join(apppath, "go.mod"), "\x1b[0m") | ||||||
|  | 		utils.WriteToFile(path.Join(apppath, "go.mod"), fmt.Sprintf(goMod, packpath, runtime.Version()[2:], beegoVersion.String())) | ||||||
|  | 	} | ||||||
| 	fmt.Fprintf(output, "\t%s%screate%s\t %s%s\n", "\x1b[32m", "\x1b[1m", "\x1b[21m", apppath, "\x1b[0m") | 	fmt.Fprintf(output, "\t%s%screate%s\t %s%s\n", "\x1b[32m", "\x1b[1m", "\x1b[21m", apppath, "\x1b[0m") | ||||||
| 	os.Mkdir(path.Join(apppath, "conf"), 0755) | 	os.Mkdir(path.Join(apppath, "conf"), 0755) | ||||||
| 	fmt.Fprintf(output, "\t%s%screate%s\t %s%s\n", "\x1b[32m", "\x1b[1m", "\x1b[21m", path.Join(apppath, "conf"), "\x1b[0m") | 	fmt.Fprintf(output, "\t%s%screate%s\t %s%s\n", "\x1b[32m", "\x1b[1m", "\x1b[21m", path.Join(apppath, "conf"), "\x1b[0m") | ||||||
|   | |||||||
| @@ -71,14 +71,14 @@ func init() { | |||||||
| func RunMigration(cmd *commands.Command, args []string) int { | func RunMigration(cmd *commands.Command, args []string) int { | ||||||
| 	currpath, _ := os.Getwd() | 	currpath, _ := os.Getwd() | ||||||
|  |  | ||||||
| 	gps := utils.GetGOPATHs() | 	//gps := utils.GetGOPATHs() | ||||||
| 	if len(gps) == 0 { | 	//if len(gps) == 0 { | ||||||
| 		beeLogger.Log.Fatal("GOPATH environment variable is not set or empty") | 	//	beeLogger.Log.Fatal("GOPATH environment variable is not set or empty") | ||||||
| 	} | 	//} | ||||||
|  | 	// | ||||||
| 	gopath := gps[0] | 	//gopath := gps[0] | ||||||
|  | 	// | ||||||
| 	beeLogger.Log.Debugf("GOPATH: %s", utils.FILE(), utils.LINE(), gopath) | 	//beeLogger.Log.Debugf("GOPATH: %s", utils.FILE(), utils.LINE(), gopath) | ||||||
|  |  | ||||||
| 	// Getting command line arguments | 	// Getting command line arguments | ||||||
| 	if len(args) != 0 { | 	if len(args) != 0 { | ||||||
|   | |||||||
| @@ -302,6 +302,10 @@ func CreateApp(cmd *commands.Command, args []string) int { | |||||||
| 	beeLogger.Log.Info("Creating application...") | 	beeLogger.Log.Info("Creating application...") | ||||||
|  |  | ||||||
| 	os.MkdirAll(appPath, 0755) | 	os.MkdirAll(appPath, 0755) | ||||||
|  | 	if module == `true` { | ||||||
|  | 		fmt.Fprintf(output, "\t%s%screate%s\t %s%s\n", "\x1b[32m", "\x1b[1m", "\x1b[21m", path.Join(appPath, "go.mod"), "\x1b[0m") | ||||||
|  | 		utils.WriteToFile(path.Join(appPath, "go.mod"), fmt.Sprintf(goMod, packPath, runtime.Version()[2:], beegoVersion.String())) | ||||||
|  | 	} | ||||||
| 	fmt.Fprintf(output, "\t%s%screate%s\t %s%s\n", "\x1b[32m", "\x1b[1m", "\x1b[21m", appPath+string(path.Separator), "\x1b[0m") | 	fmt.Fprintf(output, "\t%s%screate%s\t %s%s\n", "\x1b[32m", "\x1b[1m", "\x1b[21m", appPath+string(path.Separator), "\x1b[0m") | ||||||
| 	os.Mkdir(path.Join(appPath, "conf"), 0755) | 	os.Mkdir(path.Join(appPath, "conf"), 0755) | ||||||
| 	fmt.Fprintf(output, "\t%s%screate%s\t %s%s\n", "\x1b[32m", "\x1b[1m", "\x1b[21m", path.Join(appPath, "conf")+string(path.Separator), "\x1b[0m") | 	fmt.Fprintf(output, "\t%s%screate%s\t %s%s\n", "\x1b[32m", "\x1b[1m", "\x1b[21m", path.Join(appPath, "conf")+string(path.Separator), "\x1b[0m") | ||||||
| @@ -341,11 +345,6 @@ func CreateApp(cmd *commands.Command, args []string) int { | |||||||
|  |  | ||||||
| 	fmt.Fprintf(output, "\t%s%screate%s\t %s%s\n", "\x1b[32m", "\x1b[1m", "\x1b[21m", path.Join(appPath, "main.go"), "\x1b[0m") | 	fmt.Fprintf(output, "\t%s%screate%s\t %s%s\n", "\x1b[32m", "\x1b[1m", "\x1b[21m", path.Join(appPath, "main.go"), "\x1b[0m") | ||||||
| 	utils.WriteToFile(path.Join(appPath, "main.go"), strings.Replace(maingo, "{{.Appname}}", packPath, -1)) | 	utils.WriteToFile(path.Join(appPath, "main.go"), strings.Replace(maingo, "{{.Appname}}", packPath, -1)) | ||||||
|  |  | ||||||
| 	if module == `true` { |  | ||||||
| 		fmt.Fprintf(output, "\t%s%screate%s\t %s%s\n", "\x1b[32m", "\x1b[1m", "\x1b[21m", path.Join(appPath, "go.mod"), "\x1b[0m") |  | ||||||
| 		utils.WriteToFile(path.Join(appPath, "go.mod"), fmt.Sprintf(goMod, packPath, runtime.Version()[2:], beegoVersion.String())) |  | ||||||
| 	} |  | ||||||
| 	beeLogger.Log.Success("New application successfully created!") | 	beeLogger.Log.Success("New application successfully created!") | ||||||
| 	return 0 | 	return 0 | ||||||
| } | } | ||||||
|   | |||||||
| @@ -15,15 +15,17 @@ | |||||||
| package generate | package generate | ||||||
|  |  | ||||||
| import ( | import ( | ||||||
|  | 	"bufio" | ||||||
| 	"database/sql" | 	"database/sql" | ||||||
| 	"fmt" | 	"fmt" | ||||||
|  | 	"io" | ||||||
| 	"os" | 	"os" | ||||||
| 	"path" | 	"path" | ||||||
| 	"path/filepath" | 	"path/filepath" | ||||||
| 	"regexp" | 	"regexp" | ||||||
| 	"strings" | 	"strings" | ||||||
|  |  | ||||||
| 	beeLogger "github.com/beego/bee/logger" | 	"github.com/beego/bee/logger" | ||||||
| 	"github.com/beego/bee/logger/colors" | 	"github.com/beego/bee/logger/colors" | ||||||
| 	"github.com/beego/bee/utils" | 	"github.com/beego/bee/utils" | ||||||
| 	_ "github.com/go-sql-driver/mysql" | 	_ "github.com/go-sql-driver/mysql" | ||||||
| @@ -946,6 +948,37 @@ func getFileName(tbName string) (filename string) { | |||||||
| } | } | ||||||
|  |  | ||||||
| func getPackagePath(curpath string) (packpath string) { | func getPackagePath(curpath string) (packpath string) { | ||||||
|  | 	if os.Getenv(`GO111MODULE`) == `on` { | ||||||
|  | 		beeLogger.Log.Infof("GO111MODULE = on,curpath: %s", curpath) | ||||||
|  | 		gomodpath := filepath.Join(curpath, `go.mod`) | ||||||
|  | 		re, err := regexp.Compile(`^module\s+(.+)$`) | ||||||
|  | 		if err != nil { | ||||||
|  | 			beeLogger.Log.Fatalf("generate regexp error:%s", err) | ||||||
|  | 			return "" | ||||||
|  | 		} | ||||||
|  | 		fd, err := os.Open(gomodpath) | ||||||
|  | 		if err != nil { | ||||||
|  | 			beeLogger.Log.Fatalf("Error while reading 'go.mod',%s", gomodpath) | ||||||
|  | 		} | ||||||
|  | 		reader := bufio.NewReader(fd) | ||||||
|  | 		for { | ||||||
|  | 			byteLine, _, er := reader.ReadLine() | ||||||
|  | 			if er != nil && er != io.EOF { | ||||||
|  | 				return "" | ||||||
|  | 			} | ||||||
|  | 			if er == io.EOF { | ||||||
|  | 				break | ||||||
|  | 			} | ||||||
|  | 			line := string(byteLine) | ||||||
|  | 			s := re.FindStringSubmatch(line) | ||||||
|  | 			if len(s) >= 2 { | ||||||
|  | 				return s[1] | ||||||
|  | 			} | ||||||
|  | 		} | ||||||
|  | 		beeLogger.Log.Fatalf("Error while parse 'go.mod',%s", gomodpath) | ||||||
|  | 		return "" | ||||||
|  | 	} | ||||||
|  |  | ||||||
| 	gopath := os.Getenv("GOPATH") | 	gopath := os.Getenv("GOPATH") | ||||||
| 	if gopath == "" { | 	if gopath == "" { | ||||||
| 		beeLogger.Log.Fatal("GOPATH environment variable is not set or empty") | 		beeLogger.Log.Fatal("GOPATH environment variable is not set or empty") | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 qiantao
					qiantao