[
https://issues.jboss.org/browse/FORGE-378?page=com.atlassian.jira.plugin....
]
Antonio Goncalves commented on FORGE-378:
-----------------------------------------
I would go for something more abstract such as :
{code}
set environment CONTAINER --version JBoss-7.1.0.Final
set environment CONTAINER --version GlassFish-4.0.0.Final
set environment CONTAINER --version TomEE-1.5.0.Final
{code}
But I would also seperate the notion of Java EE version from the version of the container
(you can generate a Java EE 6 app for GlassFish 4, as well as a Java EE 7 app) :
{code}
set environment JAVAEE --version JavaEE-6
set environment JAVAEE --version JavaEE-7
set environment JAVAEE --version JavaEE-7-Web.Profile
{code}
The version of the container is important for all the specific implementations, but the
JavaEE version is somehow more important for compiling the application against these APIs
and making sure the code is portable. Instead of the Java EE BOM of JBoss AS (or the Java
EE BOM of GlassFish), why not using the generic Java EE APIs no matter what the container
is :
{code}
<dependency>
<groupId>javax</groupId>
<artifactId>javaee-api</artifactId>
<version>7.0</version>
</dependency>
<dependency>
<groupId>javax</groupId>
<artifactId>javaee-api</artifactId>
<version>6.0</version>
</dependency>
<dependency>
<groupId>javax</groupId>
<artifactId>javaee-web-api</artifactId>
<version>7.0</version>
</dependency>
<dependency>
<groupId>javax</groupId>
<artifactId>javaee-web-api</artifactId>
<version>6.0</version>
</dependency>
{code}
Add "environments" as a first class construct
---------------------------------------------
Key: FORGE-378
URL:
https://issues.jboss.org/browse/FORGE-378
Project: Forge
Issue Type: Feature Request
Components: UI - Shell, Usability
Reporter: Pete Muir
For example:
{code}
set environment JBOSS_AS7 --version 7.1.0.Final
{code}
Where JBOSS_AS7 is a built in profile that contains necessary info on various versions of
JBoss AS 7.
For example, the persistence plugin could read from this, changing
{code}
persistence setup --provider HIBERNATE --container JBOSS_AS7
{code}
to
{code}
persistence setup
{code}
Or, when setting up CDI, this would remove the need to ask ask which API to use (always
use the Java EE BOM with JBoss AS), and as the metadata builds, remove the need to ask the
version of the spec BOM to use.
Lot's of other places where this could provide better defaulting, or remove the need
to ask questions.
This also seems fairly consistent with the Forge approach - good understanding of the
project in question.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see:
http://www.atlassian.com/software/jira