Uploaded image for project: 'Apache Avro'
  1. Apache Avro
  2. AVRO-890

Maven archetype for creating Avro service projects



    • Improvement
    • Status: Closed
    • Minor
    • Resolution: Fixed
    • 1.5.4
    • 1.6.0
    • java
    • Reviewed


      I've put together the beginnings of an maven archetypes subproject in the java module to help folks kickstart avro projects. The first archetype creates a simple avro based ordering service using the netty transport and includes an integration test for the service. The service is very naive, though its really only the plumbing that is important and the example is illustrative enough to get people going.

      Once built, it can be added to the local archetypes catalog via
      mvn archetype:crawl

      and then will be available via the generate plugin
      mvn archetype:generate

      or it can be invoked directly as follows
      mvn archetype:generate -DarchetypeArtifactId=avro-service-archetype -DarchetypeGroupId=org.apache.avro -DgroupId=org.simple -DartifactId=simple-service -Dversion=1.0-SNAPSHOT

      The parent pom contains common config for generating a pom for the archetype that references the current avro build version. This takes some slight of hand with maven resources to insert the version and will be reusable for other archetypes in the future.

      I intend putting together a map-reduce archetype soon and am open to suggestions for other archetypes that might be useful. Perhaps one that included the code from AVRO-883 to kick start a basic serialization project?


        1. archetypes.patch
          29 kB
          Stephen Gargan
        2. archetypes.patch
          28 kB
          Stephen Gargan
        3. archetypes.patch
          28 kB
          Stephen Gargan
        4. archetypes.patch
          27 kB
          Stephen Gargan



            sgargan Stephen Gargan
            sgargan Stephen Gargan
            0 Vote for this issue
            0 Start watching this issue