Investigate AQAvit use of maven
- Dominant language
- Java
- Stars
- 22
- Forks
- 114
- Avg merge
- 4d 2h
- Merged PRs (30d)
- 8
Description
Currently the AQAvit base layer utilizes ant for **building test materials** and in some cases **fetching dependencies**. This choice was due in part to the large amount of materials that already use ant. While it may not make sense to remove ant from the project and wholesale replace it with something else (maven would be the preference over gradle?), we should look at the pros and cons and effort of doing so, to determine if we should either:
- replace ant with maven
- support both ant and maven (which ever is used by the material we are adding to the AQA suite)
- continue to use ant (and create ant scripts for materials that do not use it as their chosen build system)
- use ant and incorporate ivy for dependency bits
We can use this issue to create notes on use cases and pros and cons as well as annotating what points in TKG would need modification to be able to support something new.
Useful related reading material:
- Apache Ivy + Ant, versus Maven: https://ant.apache.org/ivy/m2comparison.html
- http://xhab.blogspot.com/2006/09/antivy-vs-maven-my-biased-opinion.html
- https://thegreatapi.com/blog/create-a-library-from-scratch/
- https://www.vogella.com/tutorials/ApacheMaven/article.html
Contributor guide
Research direction
Review the AQAvit base layer and the TKG areas that would need modification to support a different build or dependency approach. Read the linked Apache Ivy and Maven comparison material, then document relevant use cases, pros and cons, effort, and a recommendation among the listed options. Done means the investigation notes identify the affected TKG points and a preferred direction.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- build-system
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 25/100