may the forge be with you

58
May the forge be with you Sandro Sonntag - adorsys GmbH

Upload: sandro-sonntag

Post on 27-Nov-2014

572 views

Category:

Technology


2 download

DESCRIPTION

JBoss One Day Talk Vortrag Kennen Sie das? Sie sind gerade dabei, die Projektkonfiguration für Ihre gefühlt tausendste Java-Web-Anwendung zu erstellen. Sie nehmen sich Ihr letztes erfolgreiches Projekt-Setup als Vorlage. Und dann versuchen Sie durch beherztes Copy und Paste das neue Projekt zu erstellen? Wenn Sie sich damit auch nicht abfinden wollen sind Sie in diesem Vortrag genau richtig. Wir werfen einen Blick auf das noch sehr junge RAD-Tool JBoss-Forge und sehen, wie uns JBoss Forge den Entwickler Tag bereichern kann.

TRANSCRIPT

Page 1: May the forge be with you

05/16/12

May the forge be with youSandro Sonntag - adorsys GmbH

Page 2: May the forge be with you

Principal Architekt bei adorsys GmbH

https://www.xing.com/profile/Sandro_Sonntag

Über michSandro Sonntag

Page 3: May the forge be with you

Das Raumschiff Java Enterprise

fliegt in neuE Galaxien

Wir schreiben das Jahr 2013

Page 4: May the forge be with you

KIRK: WIE Lang BrauchT DER BAU eines NEUEN REST-SEVICES?

Page 5: May the forge be with you

Scotty: CA 12 Stunden

Page 6: May the forge be with you

KIRK: Ich geb Dir 4

Page 7: May the forge be with you

Scotty: ich machs in 1er !

Page 8: May the forge be with you
Page 11: May the forge be with you

Forge, das DRY Tool für Softwareentwicklung

Heutzutage

Page 12: May the forge be with you

Forge, das DRY Tool für Softwareentwicklung

Page 13: May the forge be with you

Forge, das DRY Tool für Softwareentwicklung

Page 14: May the forge be with you

Forge, das DRY Tool für Softwareentwicklung

Page 15: May the forge be with you

Was steckt drin ?

Page 16: May the forge be with you

Was steckt drin ?• Scaffolding /

Generierungstool

Page 17: May the forge be with you

Was steckt drin ?• Scaffolding /

Generierungstool

• Generierung von Javacode und Konfigurationen

Page 18: May the forge be with you

Was steckt drin ?• Scaffolding /

Generierungstool

• Generierung von Javacode und Konfigurationen

• Unterstützt die gängigen JEE APIs

Page 19: May the forge be with you

Was steckt drin ?• Scaffolding /

Generierungstool

• Generierung von Javacode und Konfigurationen

• Unterstützt die gängigen JEE APIs

• Maven

Page 20: May the forge be with you

Was steckt drin ?• Scaffolding /

Generierungstool

• Generierung von Javacode und Konfigurationen

• Unterstützt die gängigen JEE APIs

• Maven

• GIT

Page 21: May the forge be with you

Was steckt drin ?• Scaffolding /

Generierungstool

• Generierung von Javacode und Konfigurationen

• Unterstützt die gängigen JEE APIs

• Maven

• GIT

• Unterstützung für die gängigen OSS Applicationserver

Page 22: May the forge be with you

Was steckt drin ?• Scaffolding /

Generierungstool

• Generierung von Javacode und Konfigurationen

• Unterstützt die gängigen JEE APIs

• Maven

• GIT

• Unterstützung für die gängigen OSS Applicationserver

• Pluginsystem (CDI, baut auf JBoss Modules)

Page 23: May the forge be with you

Was steckt drin ?• Scaffolding /

Generierungstool

• Generierung von Javacode und Konfigurationen

• Unterstützt die gängigen JEE APIs

• Maven

• GIT

• Unterstützung für die gängigen OSS Applicationserver

• Pluginsystem (CDI, baut auf JBoss Modules)

• Ökosystem - zentrales Pluginrepository

Page 24: May the forge be with you
Page 25: May the forge be with you

Cooking a new Plugin

Page 26: May the forge be with you

Cooking a new Plugin

Java

Page 27: May the forge be with you

Cooking a new Plugin

CDI

Java

Page 28: May the forge be with you

Cooking a new Plugin

ForgeCDI

Java

Page 29: May the forge be with you

Cooking a new Plugin

ForgeCDI

aven

Java

Page 30: May the forge be with you

Cooking a new Plugin

Arquillian

ForgeCDI

aven

Java

Page 31: May the forge be with you

Cooking a new Plugin

Arquillian

JBoss Modules

ForgeCDI

aven

Java

Page 32: May the forge be with you

What is a

Page 33: May the forge be with you

PluginWhat is a

Page 34: May the forge be with you

Plugin

Page 35: May the forge be with you

Plugin

JBoss Module

Page 36: May the forge be with you

Plugin

JBoss Module

Commands

Page 37: May the forge be with you

Plugin

JBoss Module

Commands

Setup Command

Page 38: May the forge be with you

ENV

Plugin

JBoss Module

Commands

Setup Command

Page 39: May the forge be with you

ENV

Plugin

JBoss Module

Commands

Setup Command

Project

Page 40: May the forge be with you

ENV

Plugin

JBoss Module

Commands

Setup Command

Shell

Project

Page 41: May the forge be with you

ENV

Plugin

JBoss Module

Commands

Setup Command

Shell Current Resource

Project

Page 42: May the forge be with you

ENV

Plugin

JBoss Module

Commands

Setup Command

Shell Current Resource

Project

Facets

Page 43: May the forge be with you

Facets

Page 44: May the forge be with you

Facets

REST Plugin

Page 45: May the forge be with you

Facets

REST Plugin JSF Plugin

Page 46: May the forge be with you

Facets

Project

REST Plugin JSF Plugin

Page 47: May the forge be with you

Facets

Project

FacesFacet WebResourceFacet Java Facet

REST Plugin JSF Plugin

Page 48: May the forge be with you

Forge Core Facets• DependencyFacet

• JavaExecutionFacet

• JavaSourceFacet

• MavenCoreFacet

• MavenPluginFacet

• MetadataFacet

• PackagingFacet

• ResourceFacet

• WebResourceFacet

Page 49: May the forge be with you

Forge Resource System

Page 50: May the forge be with you

Forge Resource System

Page 51: May the forge be with you

Forge Resource System

Page 52: May the forge be with you
Page 53: May the forge be with you

Forge Java Type System

JavaSource<?> classUnderTest = JavaParser.parse( "package test; public class ForgeIt { public void doit(){} }");

Page 54: May the forge be with you

Advanced Usecases

• Project Wizard

• Release Setup

• Clean Maven POMs

• DLL-Generierung

• Forge Server Build Integration - Continous Delivery

• https://github.com/adorsys

Page 55: May the forge be with you

Forge 2.0 steht vor der Tür

• schneller!

• Designed for Modularity

• Neues Addon System - aus Plugins werden Addons

• Transaction Support

Page 56: May the forge be with you

Forge 2 Architecture

Page 57: May the forge be with you

Referenzen• JBoss Forge: http://

forge.jboss.org/

• Arquillian Tutorial: http://arquillian.org/guides/get_started_faster_with_forge/

• Beantest Forge Plugin: https://github.com/ersatzcapo/forge-beanstest

• SLF4J Plugin: https://github.com/xandrox/forge-slf4jplugin

• Forge GWT Plugin: http://forge-gwtplugin.github.io/

• Forge Artikel: http://jaxenter.de/artikel/MaytheForgebewithyou

Page 58: May the forge be with you

Noch Fragen?