Wählen Sie Ihre Cookie-Einstellungen aus

Wir verwenden essentielle Cookies und ähnliche Tools, die für die Bereitstellung unserer Website und Services erforderlich sind. Wir verwenden Performance-Cookies, um anonyme Statistiken zu sammeln, damit wir verstehen können, wie Kunden unsere Website nutzen, und Verbesserungen vornehmen können. Essentielle Cookies können nicht deaktiviert werden, aber Sie können auf „Anpassen“ oder „Ablehnen“ klicken, um Performance-Cookies abzulehnen.

Wenn Sie damit einverstanden sind, verwenden AWS und zugelassene Drittanbieter auch Cookies, um nützliche Features der Website bereitzustellen, Ihre Präferenzen zu speichern und relevante Inhalte, einschließlich relevanter Werbung, anzuzeigen. Um alle nicht notwendigen Cookies zu akzeptieren oder abzulehnen, klicken Sie auf „Akzeptieren“ oder „Ablehnen“. Um detailliertere Entscheidungen zu treffen, klicken Sie auf „Anpassen“.

Entwickeln Sie benutzerdefinierte Provisioning-Plugins

Fokusmodus
Entwickeln Sie benutzerdefinierte Provisioning-Plugins - AWS IoT Greengrass

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Um ein benutzerdefiniertes Provisioning-Plugin zu entwickeln, erstellen Sie eine Java-Klasse, die diecom.aws.greengrass.provisioning.DeviceIdentityInterface-Schnittstelle implementieren. Sie können die Greengrass Nucleus JAR-Datei in Ihr Projekt aufnehmen, um auf diese Schnittstelle und ihre Klassen zuzugreifen. Diese Schnittstelle definiert eine Methode, die eine Plugin-Konfiguration eingibt und eine Provisioning-Konfiguration ausgibt. Die Provisioning-Konfiguration definiert Konfigurationen für das System und dieGreengrass Kernkomponenteaus. DieAWS IoT GreengrassCore-Software-Installer verwendet diese Provisioning-Konfiguration, um dieAWS IoT GreengrassKernsoftware auf einem Gerät.

Nachdem Sie ein benutzerdefiniertes Provisioning-Plugin entwickelt haben, erstellen Sie es als JAR-Datei, die Sie demAWS IoT GreengrassKernsoftware-Installer, um Ihr Plugin während der Installation auszuführen. Das Installationsprogramm führt Ihr benutzerdefiniertes Provisioning-Plugin in derselben JVM aus, die das Installationsprogramm verwendet, sodass Sie ein JAR erstellen können, das nur Ihren Plugin-Code enthält.

Anmerkung

DieAWS IoTFlottenbereitstellungs-Pluginimplementiert dieDeviceIdentityInterfaceum Flottenbereitstellung während der Installation zu verwenden. Das Plugin für die Flottenbereitstellung ist Open Source, sodass Sie den Quellcode untersuchen können, um ein Beispiel für die Verwendung der Provisioning-Plugin-Schnittstelle zu sehen. Weitere Informationen finden Sie im .AWS IoTFlottenbereitstellungs-Pluginauf GitHub:

Voraussetzungen

Um ein benutzerdefiniertes Provisioning-Plugin zu entwickeln, müssen Sie eine Java-Klasse erstellen, die die folgenden Anforderungen erfüllt:

  • Verwendet diecom.aws.greengrassPaket oder ein Paket innerhalb dercom.aws.greengrass-Paket.

  • Hat einen Konstruktor ohne Argumente.

  • Implementiert dieDeviceIdentityInterface-Schnittstelle implementieren. Weitere Informationen finden Sie unter Implementieren Sie DeviceIdentityInterface Schnittstelle.

Implementieren Sie DeviceIdentityInterface Schnittstelle

So verwenden Sie dencom.aws.greengrass.provisioning.DeviceIdentityInterfacefügen Sie in Ihrem benutzerdefinierten Plugin den Greengrass-Kern als Abhängigkeit zu Ihrem Projekt hinzu.

So verwenden Sie den DeviceIdentityInterface in einem benutzerdefinierten Provisioning-Plugin-Projekt
  • Sie können die Greengrass-Kern-JAR-Datei als Bibliothek hinzufügen oder den Greengrass-Kern als Maven-Abhängigkeit hinzufügen. Führen Sie eine der folgenden Aktionen aus:

    • Um die Greengrass Nucleus JAR-Datei als Bibliothek hinzuzufügen, laden Sie dieAWS IoT GreengrassKernsoftware, die den Greengrass-Kern JAR enthält. Sie können die neueste Version vonAWS IoT GreengrassCore-Software von folgendem Speicherort aus:

      Sie finden die Greengrass Nucleus JAR-Datei (Greengrass.jar) imlib-Ordner in der ZIP-Datei. Fügen Sie diese JAR-Datei zu Ihrem Projekt hinzu.

    • Um den Greengrass-Kern in einem Maven-Projekt zu konsumieren, fügen Sie eine Abhängigkeit vonnucleus-Artefakt imcom.aws.greengrassGruppe. Sie müssen auch diegreengrass-commonRepository, da der Greengrass-Kern im Maven Central Repository nicht verfügbar ist.

      <project ...> ... <repositories> <repository> <id>greengrass-common</id> <name>greengrass common</name> <url>https://d2jrmugq4soldf.cloudfront.net/snapshots</url> </repository> </repositories> ... <dependencies> <dependency> <groupId>com.aws.greengrass</groupId> <artifactId>nucleus</artifactId> <version>2.5.0-SNAPSHOT</version> <scope>provided</scope> </dependency> </dependencies> </project>

Die DeviceIdentityInterface-Schnittstelle

Diecom.aws.greengrass.provisioning.DeviceIdentityInterface-Schnittstelle hat die folgende Form.

Anmerkung

Sie können diese Kurse auch imcom.aws.greengrass.provisioning-PaketderGreengrass Nucleus-Quellcodeauf GitHub:

public interface com.aws.greengrass.provisioning.DeviceIdentityInterface { ProvisionConfiguration updateIdentityConfiguration(ProvisionContext context) throws RetryableProvisioningException, InterruptedException; // Return the name of the plugin. String name(); } com.aws.greengrass.provisioning.ProvisionConfiguration { SystemConfiguration systemConfiguration; NucleusConfiguration nucleusConfiguration } com.aws.greengrass.provisioning.ProvisionConfiguration.SystemConfiguration { String certificateFilePath; String privateKeyPath; String rootCAPath; String thingName; } com.aws.greengrass.provisioning.ProvisionConfiguration.NucleusConfiguration { String awsRegion; String iotCredentialsEndpoint; String iotDataEndpoint; String iotRoleAlias; } com.aws.greengrass.provisioning.ProvisioningContext { Map<String, Object> parameterMap; String provisioningPolicy; // The policy is always "PROVISION_IF_NOT_PROVISIONED". } com.aws.greengrass.provisioning.exceptions.RetryableProvisioningException {}

Jeder Konfigurationswert imSystemConfigurationundNucleusConfigurationist erforderlich, um dasAWS IoT GreengrassCore-Software, aber Sie können zurückkehrennullaus. Wenn Ihr benutzerdefiniertes Provisioning-Plugin zurückkehrtnullfür jeden Konfigurationswert müssen Sie diesen Wert in der System- oder Kernkonfiguration angeben, wenn Sie dieconfig.yamlzur Verfügung zu stellende DateiAWS IoT GreengrassCore-Software-Installationsprogramm. Wenn Ihr benutzerdefiniertes Provisioning-Plugin einen Wert ungleich Null für eine Option zurückgibt, die Sie auch inconfig.yaml, dann ersetzt das Installationsprogramm den Wert inconfig.yamlmit dem vom Plugin zurückgegebenen Wert.

DatenschutzNutzungsbedingungen für die WebsiteCookie-Einstellungen
© 2025, Amazon Web Services, Inc. oder Tochtergesellschaften. Alle Rechte vorbehalten.