Bereitstellen von Lösungspaketen (SharePoint Foundation 2010)
Gilt für: SharePoint Foundation 2010
Letztes Änderungsdatum des Themas: 2016-11-30
In diesem Artikel werden Lösungspakete und ihre Rolle bei der Bereitstellung von erstellten und entwickelten Anpassungen in Microsoft SharePoint Foundation 2010 beschrieben. Er enthält Verfahren zum Importieren und Bereitstellen von Lösungspaketen sowie ein Beispiel für das Erstellen und Bereitstellen eines Lösungspakete mit Microsoft Visual Studio 2010.
Inhalt dieses Artikels:
Was ist ein Lösungspaket?
Bereitstellen von Websiteelementen mithilfe von Lösungspaketen
Erstellen und Bereitstellen eines benutzerdefinierten Webpartlösungspakets mithilfe von Visual Studio 2010
Was ist ein Lösungspaket?
Ein Lösungspaket ist ein Verteilungspaket, mit dem ein benutzerdefiniertes SharePoint Foundation 2010-Entwicklungsergebnis auf den Webservern oder Anwendungsservern in der Serverfarm bereitgestellt wird. Verwenden Sie Lösungen, um benutzerdefinierte Features, Websitedefinitionen, Vorlagen, Layoutseiten, Webparts, Cascading Stylesheets und Assemblys zu packen und bereitzustellen.
In diesem Artikel wird nicht die Bereitstellung von Sandkastenlösungen erläutert. Sie können eine Microsoft SharePoint Foundation 2010-Lösung direkt in der SharePoint Foundation-Farm bereitstellen, oder Sie können die Lösung in einem Sandkasten bereitstellen. Ein Sandkasten ist eine eingeschränkte Ausführungsumgebung, in der Programme nur auf bestimmte Ressourcen zugreifen können. Im Sandkasten auftretende Probleme können sich nicht auf die übrige Serverumgebung auswirken. Weitere Informationen finden Sie unter Übersicht über Sandkastenlösungen (SharePoint Foundation 2010).
Ein Lösungspaket ist eine CAB-Datei mit der Dateinamenerweiterung WSP und einer Manifestdatei. Zum Entwickeln und Packen von SharePoint-Lösungen wird die Verwendung der Visual Studio 2010-Tools für SharePoint 2010 empfohlen. Lösungspakete können auch manuell mit Tools wie Makecab.exe und SharePoint Packman erstellt werden.
Die folgenden Komponenten können u. a. in einem Lösungspaket gepackt werden:
.NET Framework-Assemblys, i. d. R. Webpartassemblys und Ereignisempfängerassemblys.
Bereitstellungsdateien, z. B. Ressourcendateien, Seiten oder andere Hilfsdateien.
Features, die Ihnen das Aktivieren und Deaktivieren von Code in einer Website und das Bereitstellen von Funktionen ermöglichen, die Elemente, z. B. benutzerdefinierte Listen, Bibliotheken, Felder und Inhaltstypen, umfassen.
Neue Vorlagen und Websitedefinitionen.
Konfigurationen, die auf Webserverebene vorgenommen werden müssen, beispielsweise das Bereitstellen von Anpassungen der Datei Web.config für die Registrierung von Webparts. Sie können diese Konfigurationen auch mit einem Feature ändern, das mit einem Feature verteilt wird.
Webinhalt, z. B. Webseiten und Bilder, die von Webseiten aufgerufen werden. Wenn Sie Webinhalt in einer getrennten Umgebung bereitstellen müssen, sollten Sie ein Inhaltsbereitstellungspaket verwenden.
Bereitstellen von Websiteelementen mithilfe von Lösungspaketen
Inhalt dieses Abschnitts:
Verwendung von Lösungspaketen
Bereitstellen von Farmlösungen
Importieren eines Lösungspakets
Bereitstellen eines Lösungspakets
Informationen zum Erstellen eines Lösungspakets
Verwendung von Lösungspaketen
Ein empfohlenes Verfahren zum Bereitstellen von Anpassungen ist die Verwendung von Lösungspaketen als Teil einer einfachen, sicheren und einheitlichen Anwendungslebenszyklusverwaltung. Lösungspakete vereinfachen das Ändern von Features und Funktionen der Websites, nachdem sie erstellt wurden.
Sie können Lösungspakete zum Bereitstellen neuer Lösungen und zum Upgraden vorhandener Lösungen in der gesamten Farm verwenden. Sie können alle SharePoint Foundation-Entitäten als eine Datei packen, die Datei dem Lösungsspeicher hinzufügen und sie auf den Front-End-Webservern in der Farm bereitstellen. Verwenden Sie Lösungspakete zum Synchronisieren eines Front-End-Webservers, damit sein Zustand mit dem Zustand anderer Webserver in der Farm konsistent ist.
Mit Lösungspaketen können erstellte Websiteelementanpassungen aus einer Integrationsfarm in einer Erstellungs-, Pilot- und Produktionsfarm bereitgestellt werden. In SharePoint Foundation können Benutzer eine angepasste Website als Vorlage speichern. Dadurch wird ein Lösungspaket mit der Dateinamenerweiterung WSP erstellt, das in einer anderen Farm bereitgestellt werden kann.
Mit Lösungspaketen können Sie Anpassungen zwischen den folgenden Umgebungen bereitstellen:
Von Entwicklerarbeitsstationen in einer Integrationsfarm oder einem Softwarekonfigurations-Verwaltungssystem
Von einer Integrationsfarm und Clientarbeitsstationen für die Erstellung in Pilot- oder Produktionsfarmen
Bereitstellen von Farmlösungen
Farmlösungen werden lokal oder mit einem Timerdienst bereitgestellt. Lokale und timerbasierte Bereitstellungen können mit Befehlszeilenanweisungen oder programmgesteuert mithilfe des Objektmodells ausgelöst werden.
Lokale Bereitstellung
Bei einer lokalen Bereitstellung werden Lösungsdateien nur auf dem Computer bereitgestellt, von dem die Bereitstellung initiiert wurde. Die Lösung wird in der Konfigurationsdatenbank erst als bereitgestellt markiert, wenn die Lösungsdateien auf allen entsprechenden Servern in der Serverfarm bereitgestellt sind. Anschließend werden Lösungsfeatures installiert, und es wird ein Commit von Schema- sowie Definitionsdateien für den Konfigurationsspeicher ausgeführt.
Timerdienstbereitstellungen
Wenn in Bereitstellungen der Timerdienst verwendet wird, wird durch die Bereitstellung ein Zeitgeberauftrag erstellt. Der Zeitgeberauftrag wird vom Timerdienst auf jedem Webserver in der Serverfarm ausgewählt. Zunächst werden das Manifest und Featuremanifeste analysiert, um Assembly- und Layoutdateien zu ermitteln, die an die entsprechenden Speicherorte kopiert werden. Alle anderen Dateien in einem Featureverzeichnis werden in das Featureverzeichnis kopiert. Nachdem Lösungsdateien auf die Zielcomputer kopiert wurden, wird für alle Front-End-Webserver das Zurücksetzen der Konfiguration geplant. Durch das Zurücksetzen werden dann die Dateien bereitgestellt und ein Neustart von Microsoft Internetinformationsdienste (IIS) ausgeführt. Anschließend werden Lösungsfeatures registriert, und es wird ein Commit von Schema- und Definitionsdateien für den Konfigurationsspeicher ausgeführt.
Weitere Informationen zum Lösungsspeicher, zur Bereitstellung und zur Synchronisierung finden Sie im Microsoft SharePoint 2010 Software Development Kit (SDK) unter Bereitstellen einer Lösung (https://go.microsoft.com/fwlink/?linkid=186995&clcid=0x407).
Hinzufügen eines Lösungspakets
Bevor Sie ein Lösungspaket bereitstellen können, müssen Sie es der Lösungsdatenbank einer SharePoint Foundation-Farm hinzufügen.
Wichtig
Sie müssen Mitglied der Gruppe Administratoren auf jedem Computer sein, auf dem Windows PowerShell ausgeführt wird.
So importieren Sie ein Lösungspaket mit Windows PowerShell
Stellen Sie sicher, dass die folgenden Mindestanforderungen erfüllt sind: Weitere Informationen finden Sie unter Add-SPShellAdmin.
Klicken Sie im Startmenüauf Alle Programme.
Klicken Sie auf Microsoft SharePoint 2010-Produkte.
Klicken Sie auf SharePoint 2010-Verwaltungsshell.
Geben Sie an der Windows PowerShell-Eingabeaufforderung den folgenden Befehl ein:
Add-SPSolution -LiteralPath <SolutionPath>
Die Lösung wird dem Lösungsspeicher der Farm hinzugefügt. Befolgen Sie zum Verwenden der Lösung das Verfahren im nächsten Abschnitt dieses Artikels. Weitere Informationen finden Sie unter Add-SPSolution.
Bereitstellen eines Lösungspakets
Sie können importierte Lösungen mit der Website für die Zentraladministration oder mit Windows PowerShell bereitstellen. Nachdem eine Lösung mit demWindows PowerShellAdd-SPSolution-Cmdlet dem Lösungsspeicher hinzugefügt wurde, muss sie auf einer Website bereitgestellt werden, bevor auf sie zugegriffen werden kann.
Hinweis
Lösungen können dem Lösungsspeicher nicht mithilfe der Seite Lösungsverwaltung der Zentraladministration hinzugefügt werden.
Im folgenden Verfahren wird das Bereitstellen einer importierten Lösung auf einer Website in der Farm mit der Website für die Zentraladministration oder mithilfe von Windows PowerShell veranschaulicht.
So stellen Sie eine Lösung mithilfe der Zentraladministration bereit
Klicken Sie auf der Homepage der Zentraladministration auf Systemeinstellungen.
Klicken Sie im Abschnitt Farmverwaltung auf Farmlösungen verwalten.
Klicken Sie auf der Seite Lösungsverwaltung auf die Lösung, die Sie bereitstellen möchten.
Klicken Sie auf der Seite Eigenschaften der Lösung auf Lösung bereitstellen.
Wählen Sie auf der Seite Lösung bereitstellen im Abschnitt Zeitpunkt der Bereitstellung eine der folgenden Optionen aus:
Jetzt
Zur angegebenen Zeit. Wenn Sie diese Option auswählen, müssen Sie mithilfe der Datums- und Uhrzeitfelder eine Zeit angeben. Es ist empfehlenswert, eine Zeit mit geringer Auslastung des Zielservers auszuwählen.
Klicken Sie im Abschnitt Bereitstellen für in der Liste Bestimmte Webanwendung auf Alle Webanwendungen, oder wählen Sie eine bestimmte Webanwendung aus.
Klicken Sie auf OK.
So stellen Sie ein Lösungspaket mithilfe von Windows PowerShell für eine einzelne Webanwendung bereit
Stellen Sie sicher, dass die folgenden Mindestanforderungen erfüllt sind: Weitere Informationen finden Sie unter Add-SPShellAdmin.
Klicken Sie im Startmenüauf Alle Programme.
Klicken Sie auf Microsoft SharePoint 2010-Produkte.
Klicken Sie auf SharePoint 2010-Verwaltungsshell.
Geben Sie an der Windows PowerShell-Eingabeaufforderung den folgenden Befehl ein:
Install-SPSolution -Identity <SolutionName> -WebApplication <URLname>
Dabei gilt Folgendes:
<SolutionName> ist der Name der Lösung.
<URLname> ist die URL der Webanwendung, für die Sie die importierte Lösung bereitstellen möchten.
Standardmäßig wird die Lösung sofort bereitgestellt. Sie können auch mit dem time-Parameter die Bereitstellung planen. Weitere Informationen finden Sie unter Install-SPSolution.
So stellen Sie ein Lösungspaket mithilfe von Windows PowerShell für alle Webanwendungen bereit
Stellen Sie sicher, dass die folgenden Mindestanforderungen erfüllt sind: Weitere Informationen finden Sie unter Add-SPShellAdmin.
Klicken Sie im Startmenüauf Alle Programme.
Klicken Sie auf Microsoft SharePoint 2010-Produkte.
Klicken Sie auf SharePoint 2010-Verwaltungsshell.
Geben Sie an der Windows PowerShell-Eingabeaufforderung den folgenden Befehl ein:
Install-SPSolution -Identity <SolutionName> -AllWebApplications -time <TimeToDeploy> -GACDeployment -CASPolicies
Dabei gilt Folgendes:
GACDeployment ist der Parameter, der das Bereitstellen der Assemblys im globalen Assemblycache durch SharePoint Foundation 2010 ermöglicht.
CASPolicies ermöglicht die Erstellung einer benutzerdefinierten Richtliniendatei für die Codezugriffsicherheit (Code Access Security, CAS) und die Aktivierung in der Datei Web.config der betreffenden Websitesammlung.
Standardmäßig wird die Lösung sofort bereitgestellt. Sie können die Bereitstellung auch mithilfe des time-Parameters planen.
Informationen zum Erstellen eines Lösungspakets
SharePoint Foundation 2010 enthält kein Tool zum Erstellen von Lösungspaketen. In diesem Abschnitt werden Verfahren zum Erstellen von Lösungspaketen, die entwickelte Websiteelemente und Artefakte enthalten, beschrieben.
Visual Studio 2010
Mit Visual Studio 2010 können Sie verwandte SharePoint-Elemente in einem Feature zusammenfassen und dann mehrere Features, Websitedefinitionen, Assemblys und andere Dateien in einem einzelnen Paket (WSP-Datei) zur Bereitstellung auf Servern mit SharePoint Foundation 2010 bündeln. Sie können Visual Studio 2010 zum Debuggen und Testen der WSP-Datei auf dem Server mit SharePoint Foundation 2010. Sie können auch die Bereitstellungsschritte auf dem Entwicklungscomputer anpassen.
Entwickler können mit dem automatisierten Buildprozess SharePoint-Lösungen in Visual Studio 2010 erstellen und WSP-Dateien erzeugen. Quellcode des Visual Studio-SharePoint-Projekts, mit dem die WSP-Datei generiert wird, kann dem Quellcodeverwaltungssystem mithilfe der Visual Studio 2010-Integration hinzugefügt werden. In Visual Studio 2010 können WSP-Dateien importiert und Projekte zum Erweitern der WSP-Dateien sowie zum Erstellen neuer WSP-Dateien erstellt werden. Die primäre Quelle von WSP-Dateien, die in Visual Studio 2010 importiert werden, sind Vorlagen, die auf SharePoint Foundation 2010-Websites mit dem Befehl Als Vorlage speichern von Websites gespeichert wurden. Mit diesen Vorlagen können alle Websiteanpassungen einer SharePoint-Lösung gespeichert werden.
Weitere Informationen finden Sie unter SharePoint-Entwicklung in Visual Studio (https://go.microsoft.com/fwlink/?linkid=187000&clcid=0x407).
Makecab
Lösungspakete können mit Tools, z. B. Makecab.exe, manuell erstellt werden. Das Tool Makecab.exe akzeptiert einen Zeiger auf eine DDF-Datei, die die Struktur der CAB-Datei beschreibt. Das Format einer DDF-Datei ähnelt dem Format einer INF-Datei: Sie deklarieren einen Standardheader und listen dann den Satz der Dateien nach ihrem Speicherort auf dem Datenträger und ihrem vorgesehenen Speicherort in der CAB-Datei auf, wobei pro Zeile eine Datei aufgelistet wird.
Das Tool Makecab.exe kann unter Microsoft Cabinet Software Development Kit (https://go.microsoft.com/fwlink/?linkid=107292&clcid=0x407) heruntergeladen werden.
Informationen zum Anpassen von Lösungspaketen
Wenn Sie in SharePoint Foundation 2010-Lösungen eine der folgenden Anpassungen vornehmen müssen, wird empfohlen, zum Anpassen von Lösungspaketen Visual Studio 2010 zu verwenden. Sie können diese Anpassungen auch durch das manuelle Erstellen von SharePoint-Lösungspaketen ausführen.
Stellen Sie .NET Framework-Assemblys im privaten Anwendungsordner statt im globalen Assemblycache bereit.
Fügen Sie der Lösung, die während der Bereitstellung angewendet werden muss, Berechtigungen für die Codezugriffssicherheit hinzu.
Verwenden Sie für die Featureordner andere Namen als die Standardnamen.
Lokalisieren Sie die Lösung.
Ordnen Sie bestimmten Typen von SharePoint Foundation 2010-Lösungen, z. B. Webpartlösungen, Featureereignishandler zu.
Fügen Sie dem Lösungspaket Ressourcen (XML-Dateien, Bilder, DLL-Dateien und Assemblys) hinzu.
Manuelles Erstellen einer Lösungsdatei
Für die meisten SharePoint Foundation 2010-Bereitstellungsszenarien wird empfohlen, zum Entwickeln und Packen von SharePoint-Lösungen Visual Studio 2010-Tools für SharePoint 2010 zu verwenden. In Visual Studio 2010 wird bei der Bereitstellung die WSP-Datei auf den Server mit SharePoint Foundation 2010 kopiert, die Lösung wird installiert, und dann werden die Features aktiviert.
Sie können auch eine Lösungsdatei manuell erstellen. Nachfolgend werden die grundlegenden Schritte zum Erstellen einer Lösungsdatei beschrieben:
Sammeln Sie alle einzelnen Lösungsdateien in einem Ordner. Es gibt keine konkreten Richtlinien dazu, wie Sie vorgehen sollten, aber eine bewährte Methode besteht darin, die verschiedenen Typen von Lösungsdateien in einem eigenen Unterordner zu speichern.
Erstellen Sie die Datei manifest.xml, in der die Komponenten der Lösung aufgeführt werden.
Erstellen Sie eine DDF-Datei, mit der die Struktur der Lösungsdatei definiert wird. Diese Datei enthält die Liste der einzelnen Lösungsdateien, mit denen die WSP-Ausgabedatei bestimmt wird.
Führen Sie Makecab.exe mit der DDF-Datei als Eingabe und der WSP-Datei als Ausgabe aus.
Informationen über die Lösungsmanifestdatei
Das Lösungsmanifest (immer als manifest.xml bezeichnet) wird am Stamm einer Lösungsdatei gespeichert. Diese Datei definiert die Liste der zu verarbeitenden Features, Websitedefinitionen, Ressourcendateien, Webpartdateien und Assemblys. Sie definiert nicht die Dateistruktur. Wenn Dateien in einer Lösung enthalten sind, jedoch nicht in der Datei manifest.xml aufgeführt sind, werden sie nicht verarbeitet.
Im folgenden Beispiel wird die Struktur der Datei manifest.xml in XML dargestellt.
<?xml version="1.0" encoding="utf-8" ?>
<Solution xmlns="https://schemas.microsoft.com/sharepoint/"
SolutionId="{79d1a62e-3627-11db-963e-00e08161165f}"
ResetWebServer="TRUE">
<Assemblies>
<Assembly DeploymentTarget="GlobalAssemblyCache"
Location="Example.Sharepoint.Webparts\
Example.SharePoint.WebParts.dll">
<SafeControls>
<SafeControl Assembly="Example.Sharepoint.Webparts,
Version=1.0.0.0, Culture=Neutral, PublicKeyToken=63cce650e8605f5d"
Namespace="Example.Sharepoint.Webparts" TypeName="*"/>
</SafeControls>
</Assembly>
<Assembly DeploymentTarget="GlobalAssemblyCache"
Location="Example.Sharepoint.Timer/Example.Sharepoint.Timer.dll"/>
</Assemblies>
<FeatureManifests>
<FeatureManifest Location="Example.Sharepoint.Timer\Feature.xml"/>
<FeatureManifest Location="Example.CustomType\Feature.xml"/>
<FeatureManifest Location="Example.ExampleLibrary\Feature.xml"/>
<FeatureManifest Location="Example.Columns\Feature.xml"/>
<FeatureManifest Location="Example.Workflow.ProcessExample\Feature.xml"/>
<FeatureManifest Location="Example.Workflow.ProvisionExample\Feature.xml"/>
</FeatureManifests>
<SiteDefinitionManifests>
<SiteDefinitionManifest Location="EXAMPLE">
<WebTempFile Location="1033\XML\WEBTEMPExample.XML"/>
</SiteDefinitionManifest>
</SiteDefinitionManifests>
</Solution>
Darüber hinaus können Sie ein DwpFiles-Element zum Angeben von WEBPART- oder DWP-Dateien oder ein ResourceFiles-Element zum Angeben von Ressourcendateien, Websitedefinitionen, Anwendungsressourcen und Richtlinien für die Codezugriffssicherheit hinzufügen.
Optional können Sie die Datei Feature.xml mit <ElementFile>-Tags kommentieren.
Wenn die Lösung Features enthält, fügen Sie im <ElementManifests>-Tag der Datei Feature.xml<ElementFile Location="..."/>
für alle zusätzlichen Dateien im Feature, z. B. ASP.NET-Seiten (wie allitems.aspx) oder Gestaltungsvorlagen usw., hinzu.
Weitere Informationen zu Lösungsmanifestdateien, die wesentliche Bestandteile einer Lösung definieren, finden Sie unter Lösungsschema (https://go.microsoft.com/fwlink/?linkid=183466&clcid=0x407).
Erstellen und Bereitstellen eines benutzerdefinierten Webpartlösungspakets mithilfe von Visual Studio 2010
Eine exemplarische Vorgehensweise, in der die Verwendung von Visual Studio 2010 zum Erstellen, Anpassen, Debuggen und Bereitstellen einer SharePoint-Listendefinition zum Nachverfolgen von Projektaufgaben veranschaulicht wird, finden Sie unter Exemplarische Vorgehensweise: Bereitstellen einer Aufgabenlistendefinition für Projekte (https://go.microsoft.com/fwlink/?linkid=189612&clcid=0x407) in der MSDN Library.
In dieser exemplarischen Vorgehensweise werden die folgenden Aufgaben veranschaulicht:
Erstellen eines SharePoint-Listendefinitionsprojekts, das Aufgaben enthält
Hinzufügen von Listendefinitionen zu einem SharePoint-Feature
Hinzufügen eines Ereignisempfängers zur Liste
Erstellen und Anpassen eines SharePoint-Pakets zum Bereitstellen des Features
Erstellen und Bereitstellen der SharePoint-Lösung
Wenn Sie das Beispielprojekt in dieser exemplarischen Vorgehensweise erstellen, wird die Lösung von Visual Studio 2010 automatisch dem Server hinzugefügt, der SharePoint Foundation 2010 auf dem Entwicklungscomputer zum Testen und Debuggen ausführt. Sie können auch eine Lösungspaketdatei erstellen, die Sie hinzufügen und auf einem anderen Computer bereitstellen können. Weitere Informationen finden Sie unter Gewusst wie: Bereitstellen einer SharePoint-Lösung (https://go.microsoft.com/fwlink/?linkid=187004&clcid=0x407). Sie können die Lösung mit dem Add-SPSolutionWindows PowerShell-Cmdlet auf einen anderen Computer importieren.
Sie können das Lösungspaket mit der Seite Lösungsverwaltung in der Zentraladministration bereitstellen. Alternativ können Sie das Lösungspaket mit dem Install-SPSolutionWindows PowerShell-Cmdlet bereitstellen.
Der Bereich des Projektlistenfeatures in der exemplarischen Vorgehensweise ist Web. Gehen Sie zum Aktivieren des Features wie folgt vor: Erweitern Sie auf der Website das MenüWebsiteaktionen, und klicken Sie dann auf Websiteeinstellungen. Klicken Sie unter Websiteaktionenauf Websitefeatures verwalten. Klicken Sie auf der Seite Features neben dem Featurenamen auf Aktivieren.