Skip to content

Commit 95eb066

Browse files
author
Mikołaj Koziarkiewicz
committed
atttempting to workaround the include problem part 2
1 parent 8408bbf commit 95eb066

File tree

1 file changed

+1
-31
lines changed

1 file changed

+1
-31
lines changed

README.asciidoc

Lines changed: 1 addition & 31 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
= java8-quickstart-archetype
2-
:allow-uri-read:
32

43
A bloody simple Java 8 archetype. Has the following features:
54

@@ -38,33 +37,4 @@ Basic Java 8 archetype. Options:
3837

3938
NOTE: Retrolambda support provided "as is" - if you have any problems, please file a ticket on the GitHub page!
4039

41-
Why yet another archetype?
42-
--------------------------
43-
44-
An excellent question! First of all, archetypes are sometimes quite underrated as a concept -
45-
they provide a gateway to various technologies and frameworks to coders who are not Maven, er,
46-
https://en.wikipedia.org/wiki/Maven[mavens].
47-
48-
Given that, let's take a look at some "generic" archetypes such as `net.alchim31.maven:scala-archetype-simple`
49-
or `org.apache.maven.archetypes:maven-archetype-quickstart`. After project creation,
50-
it becomes apparent that they serve mainly the following purposes:
51-
* creating the POM boilerplate for the specific project type,
52-
* introducing the POM creator to some associated frameworks, technologies and/or patterns (e.g. the Scala archetype includes no less than _three_ different test libraries at the same time).
53-
54-
At this point, coupled with the premise that POMs are essentially executable (declarative) build configuration code,
55-
it can be argued that the aforementioned archetypes fail the
56-
https://en.wikipedia.org/wiki/Single_responsibility_principle[SRP].
57-
58-
The archetype you're now viewing, and its sister project,
59-
attempt to alleviate this problem.
60-
61-
Namely, they have a single goal in mind: enable a user to create multiple projects,
62-
with the most popular _exclusive_ configuration _variants_, and with the _least_ "educto-boilerplate" to clean up.
63-
64-
The last subpoint emphasizes why this goal was chosen as a primary one, over educating newcomers.
65-
66-
Nowadays, various 3rd party ecosystem libs (such as the aforementioned http://junit.org/[three]
67-
http://www.scalatest.org/[testing] https://etorreborre.github.io/specs2/[libraries] )
68-
tend to do a decent job at introducing new developers. Therefore, it is posited that it's more efficient for
69-
any given archetype user to have a _tabula rasa_ available at any time than to being educated -
70-
a job that's somewhat redundant, given the context.
40+
include::common/rationarant.asciidoc[]

0 commit comments

Comments
 (0)