Furnace - Arquillian Container Adapters

A light-weight module container.

License

License

Categories

Categories

JBoss Container Application Servers Arquillian Application Testing & Monitoring
GroupId

GroupId

org.jboss.forge.furnace.test
ArtifactId

ArtifactId

arquillian-forge-parent
Last Version

Last Version

2.14.0.Final
Release Date

Release Date

Type

Type

pom
Description

Description

Furnace - Arquillian Container Adapters
A light-weight module container.
Project URL

Project URL

http://www.jboss.org/arquillian-forge-parent
Project Organization

Project Organization

JBoss by Red Hat

Download arquillian-forge-parent

How to add to project

<!-- https://jarcasting.com/artifacts/org.jboss.forge.furnace.test/arquillian-forge-parent/ -->
<dependency>
    <groupId>org.jboss.forge.furnace.test</groupId>
    <artifactId>arquillian-forge-parent</artifactId>
    <version>2.14.0.Final</version>
    <type>pom</type>
</dependency>
// https://jarcasting.com/artifacts/org.jboss.forge.furnace.test/arquillian-forge-parent/
implementation 'org.jboss.forge.furnace.test:arquillian-forge-parent:2.14.0.Final'
// https://jarcasting.com/artifacts/org.jboss.forge.furnace.test/arquillian-forge-parent/
implementation ("org.jboss.forge.furnace.test:arquillian-forge-parent:2.14.0.Final")
'org.jboss.forge.furnace.test:arquillian-forge-parent:pom:2.14.0.Final'
<dependency org="org.jboss.forge.furnace.test" name="arquillian-forge-parent" rev="2.14.0.Final">
  <artifact name="arquillian-forge-parent" type="pom" />
</dependency>
@Grapes(
@Grab(group='org.jboss.forge.furnace.test', module='arquillian-forge-parent', version='2.14.0.Final')
)
libraryDependencies += "org.jboss.forge.furnace.test" % "arquillian-forge-parent" % "2.14.0.Final"
[org.jboss.forge.furnace.test/arquillian-forge-parent "2.14.0.Final"]

Dependencies

compile (4)

Group / Artifact Type Version
org.jboss.arquillian.container : arquillian-container-spi jar
org.jboss.arquillian.container : arquillian-container-test-api jar
org.jboss.arquillian.container : arquillian-container-test-spi jar
org.jboss.shrinkwrap : shrinkwrap-impl-base jar

test (1)

Group / Artifact Type Version
junit : junit jar 4.11

Project Modules

  • core
  • classpath

Furnace

Lightweight Modular Service Container - Based on JBoss Modules and Maven. It's easier than OSGi :)

Build Status License Maven central

Usage

First, include the Furnace dependency in your project:

<dependency>
   <groupId>org.jboss.forge.furnace</groupId>
   <artifactId>furnace-se</artifactId>
   <version>${version.furnace}</version>
</dependency>

Then configure the container and start it:

Furnace furnace = FurnaceFactory.getFurnace()
furnace.addRepository(AddonRepositoryMode.MUTABLE, new File(OperatingSystemUtils.getUserForgeDir(), "addons"));

To install addons, you will need to add the following dependencies to your project:

<dependency>
   <groupId>org.jboss.forge.furnace</groupId>
   <artifactId>furnace-manager</artifactId>
   <version>${version.furnace}</version>
</dependency>

<dependency>
   <groupId>org.jboss.forge.furnace</groupId>
   <artifactId>furnace-manager-resolver-maven</artifactId>
   <version>${version.furnace}</version>
</dependency>

Then create a new AddonManager:

AddonManager manager = new AddonManagerImpl(furnace, new MavenAddonDependencyResolver())

Once you have an AddonManager instance, you can begin to install addons (You can do this while Furnace is running):

InstallRequest request = manager.install(AddonId.from("org.example:my-addon", "1.0.0.Final"));
request.perform();

Don't forget to start Furnace:

Future<Furnace> future = furnace.startAsync();
future.get(); // wait for Furnace to start, before continuing.

Once this is done, you'll now be able to request services from Furnace's AddonRegistry, and utilize the functionality of the addons you've installed:

MyServiceType instance = furnace.getAddonRegistry().getServices(MyServiceType.class).get();

Of course, addons can be pre-bundled into a project using the Furnace Maven Plugin, making it much simpler (and faster) to run your application:

<plugin>
   <groupId>org.jboss.forge.furnace</groupId>
   <artifactId>furnace-maven-plugin</artifactId>
   <version>${version.furnace}</version>
   <executions>
      <execution>
         <id>deploy-addons</id>
         <phase>prepare-package</phase>
         <goals>
            <goal>addon-install</goal>
         </goals>
         <inherited>false</inherited>
         <configuration>
            <addonRepository>${basedir}/addon-repository</addonRepository>
            <addonIds>
               <addonId>org.example:my-addon,1.0.0.Final</addonId>
            </addonIds>
         </configuration>
      </execution>
   </executions>
</plugin>

To learn more about writing addons, see the full documentation here: https://github.com/forge/core#developing-an-addon

org.jboss.forge.furnace.test

JBoss Forge

JBoss Forge is a software development tool that extends your Java IDE, providing wizards and extensions (add-ons) for different technologies and solutions

Versions

Version
2.14.0.Final
2.13.1.Final
2.13.0.Final
2.12.3.Final
2.12.2.Final
2.12.1.Final
2.12.0.Final
2.11.0.Final
2.10.1.Final
2.10.0.Final
2.9.2.Final
2.9.1.Final
2.9.0.Final
2.8.1.Final
2.8.0.Final
2.7.2.Final
2.7.1.Final
2.7.0.Final
2.6.0.Final
2.5.0.Final
2.4.1.Final
2.4.0.Final
2.3.0.Final
2.2.0.Final
2.1.1.Final
2.1.0.Final
2.0.0.Final
2.0.0.CR2
2.0.0.CR1
2.0.0.Beta4
2.0.0.Beta3
2.0.0.Beta2
2.0.0.Beta1
2.0.0.Alpha14
2.0.0.Alpha13
2.0.0.Alpha12
2.0.0.Alpha11
2.0.0.Alpha10
2.0.0.Alpha9
2.0.0.Alpha8
2.0.0.Alpha7