STSADM.exe - “操作成功完成” - 两次?
对于这样的命令:
C:\>stsadm -o upgradeSolution -name zzz.wsp -filename zzz.wsp -allowGacDeployment -local
我收到成功语句的两个输出,而不仅仅是一个:
Operation completed successfully.
Operation completed successfully.
它似乎与 -local
标志相关,所以我的猜测是它成功创建了 计时器作业然后在后台运行 execadmsvcjobs。
stsadm -o execadmsvcjobs
对此有何想法?
For a command such as this:
C:\>stsadm -o upgradeSolution -name zzz.wsp -filename zzz.wsp -allowGacDeployment -local
I receive two outputs of the success statement rather than just one:
Operation completed successfully.
Operation completed successfully.
It seems to be related to the -local
flag, so my guess would be that it successfully creates the Timer Job then runs execadmsvcjobs under the hood.
stsadm -o execadmsvcjobs
Thoughts on this?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
不幸的是,我认为这并不像看起来那么令人兴奋......
在 STSADM 中,如果您部署本地解决方案(立即),则会发生以下情况(破解反射器):
但是,如果您在整个场中部署解决方案(计时器作业),会发生这种情况:
base.OutputSucceedMessage(); 只是将“操作成功完成”的本地化语言版本写入控制台。
这两个函数都在后台执行生成 STSADM SPOperation(以及“操作成功完成”控制台消息)的操作,但直接的函数只有另一个 base.OutputSucceedMessage(); 。
Unfortunately I don't think this is nearly as exciting as it seems...
Within STSADM, if you deploy a local solution (immediate), the following happens (crack open Reflector):
However, if you deploy a solution across the farm (timer job), this happens:
base.OutputSucceedMessage(); just writes the localized language version of "Operation Completed Successfully" to the console.
Both of these do things under the hood that generate a STSADM SPOperation (and a "Operation Completed Successfully" console message), but the immediate one just has another base.OutputSucceedMessage(); on it.
您应该谨慎使用升级解决方案,因为它不支持向解决方案包添加新功能。
另请注意,如果您使用 -local,则只能部署在本地 WFE 上。为了保持一致性,我总是使用 -immediate,在添加完计时器作业后,我运行 stsadm -o execadmsvcjobs
我不确定这两条消息,但由于升级解决方案是一个两阶段操作,首先添加旧解决方案的新版本,然后添加是的,这就是你收到两条消息的原因。
You should use upgradesolution with care, since it does not support adding new features to a solution package.
Also be warned that if you use -local you only deploy on your local WFE. For consistency i always use -immediate and after i have finished adding timer jobs i run stsadm -o execadmsvcjobs
Im not sure about the two messages, but since upgradesolution is a two stage operation that first adds the new version of the old solution and then adds it, it would make sense that this was why you got two messages.