我想知道,如果我使用stsadm命令部署WSP:
stsadm -o addsolution –filename myWSP.wsp
这是否也会将所需的DLL(已包含在WSP中)安装到GAC中?
或者这是另一个手动过程吗?
答案 0 :(得分:10)
这由解决方案manifest.xml
中的 DeploymentTarget属性决定。如果您自己维护此文件,则使用以下语法将代码部署到GAC:
<Assemblies>
<Assembly DeploymentTarget="GlobalAssemblyCache"
Location="MyGAC.dll" />
</Assemblies>
如果您使用工具创建解决方案,则取决于该工具。 WSPBuilder默认部署到GAC,但可以以其他方式配置。有关如何部署到bin
的步骤,请参阅this article by Tobias Zimmergren的“为BIN设置程序集而不是GAC(包括代码访问安全性生成)”部分。
答案 1 :(得分:4)
如果您是通过VS构建软件包,请打开软件包,然后单击底部的“高级”选项卡。您将能够添加其他程序集并从此处指定部署目标。我强烈建议这样做而不是直接更新XML ......但那只是我。
答案 2 :(得分:2)
正如命令所说 addsolution ,它只是将解决方案添加到解决方案商店。您需要调用命令 deploysolution 来获取要放置的内容。这是您需要调用的命令
stsadmin -o deploysolution -name [solutionname] -allowgacdeployment
请注意, allowgacdeployment 必须将文件放入gac。你可以用这个
更多地帮助这个命令STSADM.EXE -help deploysolution
有一个替代选项可以通过UI完成此操作。转到中央管理员 - &gt;操作 - &gt;解决方案管理选择解决方案并说出部署。这将是更快速完成任务的更简单方法。