在应用程序类路径上(例如在jar中),您可以拥有一个application.properties,它为name提供合理的默认属性值.在新环境中运行时,可以在jar外部提供覆盖名称的application.properties
我将重复的application.properties与覆盖的名称放在与jar文件相同的路径上,但是在运行应用程序时:
java -jar target/myproject-0.0.1-SNAPSHOT.jar
Run Code Online (Sandbox Code Playgroud)
名称值没有被覆盖,它仍然指的是jar文件中的application.properties里面的一个.我也尝试过:
java -Dspring.config.location=/target/application.properties -jar target/myproject-0.0.1-SNAPSHOT.jar
Run Code Online (Sandbox Code Playgroud)
但它不起作用,请帮忙.
编辑
当我将当前目录更改为target并运行它时,它可以工作.
java -jar myproject-0.0.1-SNAPSHOT.jar
Run Code Online (Sandbox Code Playgroud)
为什么?为什么不能在路径之外运行呢?
我正在学习Angular4,并想知道什么是ng build和ng build --prod真正为我们做的.
使用ng build运行时,例如 main.bundle.js,main.bundle.js.map,在dist文件夹中生成
但是使用ng build --prod,只有,例如 main.90e798078cb11a3159ce.bundle.js,在dist文件夹中生成
任何人都可以解释ng build如何使用和不使用--prod
谢谢
我尝试使用mgo.DialWithInfo函数(在失败的情况下)测试连接到MongoDB的连接.mgo.DialWithInfo不会返回错误,而是会发生恐慌.
我试图添加恢复逻辑以从恐慌中恢复但没有成功.
我的问题是:
mgo.DialWithInfo回复error恐慌?码:
功能
func Connect(mongoDBDialInfo *mgo.DialInfo) error {
log.Infof("connect to MongoDB with %v", mongoDBDialInfo)
defer func() {
if r := recover(); r != nil {
fmt.Println("Recovered in f", r)
}
}()
mongoSession, err := mgo.DialWithInfo(mongoDBDialInfo)
if err != nil {
log.Errorf("error, cannot connect to MongoDB, %v", err)
msg := fmt.Sprintf("fail, cannot connect to MongoDB, %v", mongoDBDialInfo)
sf := "main.main"
errM := err.Error()
util.LogError(msg, sf, errM)
return err
} …Run Code Online (Sandbox Code Playgroud)