Poniżej opisane zostały 2 sposoby tworzenia projektu wtyczki:
Tworzenie projektu z archetypu jest szybsze i wygodniejsze. Musimy jedynie uzupełnić wymagane parametry takie jak nazwa, klucz etc.
Uzupełniamy informacje o projekcie i tworzymy projekt
Projekt powinien być stworzony zgodnie z konwencją:
|
Dodajemy niezbędny plik deskryptora wtyczki suncode-plugin.xml do katalogu src/main/resources:
<?xml version="1.0" encoding="UTF-8"?> <plugin key="${project.groupId}-${project.artifactId}" name="Tutorial Plugin"> <plugin-details> <description> <localized language="en">Description</localized> <localized language="pl">Opis</localized> </description> <author>Suncode</author> </plugin-details> <!-- I18N --> <i18n key="i18n-bundle" location="locale/messages" /> <!-- Web MVC --> <web-mvc key="mvc" /> </plugin> |
Plik suncode-plugin.xml jest filtrowany przez Maven'a. Oznacza to, że w miejsca właściwości ${...} dynamicznie wstawiana jest zawartość tych właściwości. Zamiast ${project.groupId}-${project.artifactId} możemy wpisać stały identyfikator wtyczki. Wpisanie ${project.groupId}-${project.artifactId} skutkuje dynamicznie tworzonym identyfikatorem z właściwości groupId i artifactId. |
Ostateczna struktura projektu powinna wyglądać następująco:
Następnie uzupełniamy wszystkie wymagane informacje:
Opis wszystkich właściwości:
|
Stworzony projekt bo zbudowaniu może już być zainstalowany w systemie jako wtyczka. Deskryptor tej wtyczki wygląda następująco:
<?xml version="1.0" encoding="UTF-8"?> <plugin key="com.suncode.plugin-tutorial" name="Tutorial Plugin"> <plugin-details> <description> <localized language="en">Description</localized> <localized language="pl">Opis</localized> </description> <author>Suncode</author> </plugin-details> <!-- I18N --> <i18n key="i18n-bundle" location="locale/messages" /> <!-- Web MVC --> <web-mvc key="mvc" /> </plugin> |
Ostateczna struktura projektu powinna wyglądać następująco: