转:http://www.xue163.com/158/6/1585365.html

在SharePoint 2010中,我们可以使用Visual Studio 2010轻松创建WSP包来安装Web Part, Event Handler, Application Page以及其他。非常方便,但是你有没有研究过在在整个过程中SharePoint究竟做了些什么?以下是我根据http://msdn.microsoft.com/library/aa544500(office.14).aspx这边官方文章翻译,以及做实验的结果。我是用的是PowerShell命令进行部署。

在部署项目之前,看一下我的项目结构(这个项目主要是使用Feature的方式来部署Web part):

(点小图查看大图)

使用VS2010打包的结果是生成一个WSP文件“SharePointWebPartProject.wsp”.

第一步:向SharePoint添加解决方案包:

Add-SPSolution -LiteralPath "C:\Deploy\SharePointWebPartProject.wsp"

部署的结果是WSP包被部署到SharePoint的配置数据库中.(默认是SharePoint_Config)

SQL 命令:

select *
from dbo.Objects
where name='SharePointWebPartProject.wsp'

如果你的输入没有错误的话,你可以查询到2条相关的记录。

但是这个时候,数据还是仅仅存在于配置数据库中,我们还需要安装解决方案包。

第二步:安装解决方案包:

Install-SPSolution -Identity "SharePointWebPartProject.wsp" -WebApplication http://www.contoso.com  -GACDeployment

那么这一步的结果是什么呢?那就是先解压WSP包,然后拷贝程序集,Ascx等文件到相应的目录下面。当然咱们部署的是Feature,你就可以在“C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\TEMPLATE\FEATURES” 文件夹下面找到Feature的相关文件。在“C:\Windows\assembly”中也可以找到程序的dll.

如果你是多个Web前端怎么办?是不是还需要挨个部署?当然不需要了,Timer job会帮助你搞定这一切!

第三步:激活Feature:

Enable-SPFeature -Identity "SharePointWebPartProject_SharePointWebPartFeature" -Url http://www.contoso.com

这里值得注意的是 Feature的名字可能和你想象的不一样。是“ProjectName_FeatureName”自动去掉中间的空格。当你使用命令行部署的时候,如果出现错误,不妨去“C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\14\TEMPLATE\FEATURES” 看一下这个feature叫什么名字。

那么接下来你就可以向页面添加Web Part了!

补充:以下是删除解决方案的一些Powershell 命令,仅供参考:

Disable-SPFeature -Identity "SharePointWebPartProject_SharePointWebPartFeature" -Url http://www.contoso.com -Confirm:$false

Uninstall-SPSolution -Identity "SharePointWebPartProject.wsp" -WebApplication "http://www.contoso.com" -Confirm:$false
Remove-SPSolution -Identity "SharePointWebPartProject.wsp" -Confirm:$false

参考:

http://technet.microsoft.com/en-us/library/cc262995.aspx

http://msdn.microsoft.com/library/aa544500(office.14).aspx

SharePoint 2010 WSP包部署过程中究竟发生什么?的更多相关文章

  1. rpm包安装过程中依赖问题“libc.so.6 is needed by XXX”解决方法

    rpm包安装过程中依赖问题"libc.so.6 is needed by XXX"解决方法 折腾了几天,终于搞定了CentOS上的Canon LBP2900打印机驱动.中间遇到了一 ...

  2. ubuntu 可能的依赖包,安装过程中根据需要安装

    /*************依赖包安装****************/下面是可能的依赖包,安装过程中根据需要安装 build-essential - libglib2.-dev libpng3 li ...

  3. 将html代码部署到阿里云服务器,并进行域名解析,以及在部署过程中遇到的问题和解决方法

    本博客主要是说一下,,如何将html代码部署到阿里云服务器,并进行域名解析,以及在部署过程中遇到的问题和解决方法. 1.先在阿里云上购买一台阿里云服务器(ECS云服务器): 2.远程连接上该服务器,在 ...

  4. SharePoint 2010 使用Install-SPSolution部署wsp包状态一直是”正在部署”

    1.服务器场信息如下: 2.使用下面命令部署,状态一直是"正在部署" Install-SPSolution –Identity xxxx.wsp –WebApplication h ...

  5. ADFS部署过程中设置network service对证书的读取权限

    今儿在部署客户正式环境的ADFS时候遇到一问题,在配置完基于声明的身份验证后通过url访问居然报错了,这干过N回的事怎么会出错了呢,百思不得其解 网页报错如下 系统日志报错如下, 回想过程中的每一步, ...

  6. OpenResty + Lua + Kafka 实现日志收集系统以及部署过程中遇到的坑

    ********************* 部署过程 ************************** 一:场景描述 对于线上大流量服务或者需要上报日志的nginx服务,每天会产生大量的日志,这些 ...

  7. centos6.6安装hadoop-2.5.0(五、部署过程中的问题解决)

    操作系统:centos6.6 环境:selinux disabled:iptables off:java 1.8.0_131 安装包:hadoop-2.5.0.tar.gz 一.安装过程中会出现WAR ...

  8. SharePoint 2010遍历文档库中所有的文件,文件夹

    转:http://hi.baidu.com/sygwin/item/f99600849d51a12b110ef3eb 创建一个可视WebPart,并拖放一个label控件到ascx文件上,用于显示结果 ...

  9. maven打war包的过程中,都用了哪些插件呢?

    一.maven生命周期 http://ifeve.com/introduction-to-the-lifecycle/ https://maven.apache.org/guides/introduc ...

随机推荐

  1. 九度OJ 1447 最短路 1008 最短路径问题

    题目地址:http://ac.jobdu.com/problem.php?pid=1447 题目描述: 在每年的校赛里,所有进入决赛的同学都会获得一件很漂亮的t-shirt.但是每当我们的工作人员把上 ...

  2. 【nodemailer】 初试

    nodemailer 是什么? 简单的讲nodemailer就是用来发送邮件的.最近的一个项目需要向客户的注册邮箱发送验证连接,研究了一下. 刚开始我以为nodemailer还可以用来接收邮件,看了好 ...

  3. 懒加载 lazy load

    懒加载(Load On Demand)是一种独特而又强大的数据获取方法,它能够在用户滚动页面的时候自动获取更多的数据, 而新得到的数据不会影响原有数据的显示,同时最大程度上减少服务器端的资源耗用. 比 ...

  4. HttpContext.Current多线程调用

    1.在web网站的Global中,进行数据量比较大的初始化工作,而为了使用户在页面上能够及时响应,我们在Global中开启了一个线程执行该函数模块. 不过,在线程中用到HttpContext.Curr ...

  5. j2ee中如何拦截jsp页面?

    加filter: public class RightFilter implements Filter { public void init(FilterConfig filterConfig) th ...

  6. oracle LogMiner配置使用

    一.安装LogMiner1.@D:\app\product\11.1.0\db_1\RDBMS\ADMIN\dbmslm.sql 2.@D:\app\product\11.1.0\db_1\RDBMS ...

  7. mysql UNIX时间戳与日期的相互转换 查询表信息

    UNIX时间戳转换为日期用函数FROM_UNIXTIME() select FROM_UNIXTIME(1156219870); 日期转换为UNIX时间戳用函数UNIX_TIMESTAMP() Sel ...

  8. JDBC和DBUtils区别(查询时jdbc只能返回ResultSet需要po转vo,dbutils返回的BeanListHandler与BeanHandler对应集合与对象)

    17:34 2013/6/7 JDBC //添加客户 public void addNewCustomer(Customer c) throws DAOException { Connection c ...

  9. SmartGit初步使用

    在Git如日中天的今天,我也不免俗的想用Git将业余时间写的代码管理一下. 什么是Git这里不多说,具体见廖雪峰的Git教程,ProGit等详细教程. 我们这里直接上手. 一.下载Git客户端 1.G ...

  10. mongodb MongoDB 聚合 group

    MongoDB 聚合 MongoDB中聚合(aggregate)主要用于处理数据(诸如统计平均值,求和等),并返回计算后的数据结果.有点类似sql语句中的 count(*). 基本语法为:db.col ...