← Back to team overview

syncany-team team mailing list archive

Re: Maven build

 

Hi,

I have pushed in the branch, the build now generates a working assembly, you
can test it this way:
   bzr branch lp:~julien-nicoulaud/syncany/maven
   cd syncany/syncany
   mvn clean install
   syncany-assemblies/target/syncany-*-assembly/syncany-*/bin/syncany.sh

Tell me what you think !

Cheers,
Julien

2011/6/14 Philipp Heckel <philipp.heckel@xxxxxxxxx>

> Hey Julien,
>
> I've briefly browsed through the code and rearrangements you did. I
> think it really looks good! Do you have a lot of experience in this?

I've done this a few times :)


> I
> will definitely take a closer look in the next days!
>
> Cheers,
> Philipp
>
> On Mon, Jun 13, 2011 at 10:28 PM, Julien Nicoulaud
> <julien.nicoulaud@xxxxxxxxx> wrote:
> > OK, I've started it in the branch
> > (https://code.launchpad.net/~julien-nicoulaud/syncany/maven). For now
> the
> > project compiles and generates an (unusable) assembly, the work is still
> in
> > progress but you can already see the structure (please stop me right here
> if
> > it's not OK). Only a few jars remain checked in version control.
> > Also, I will add the config for izpack so you can see how easy it is to
> > generate a cross-platform installer with Izpack+Maven.
> > Cheers,
> > Julien
> >
> > 2011/6/13 Philipp Heckel <philipp.heckel@xxxxxxxxx>
> >>
> >> Alright then :-D
> >> I'm convinced!
> >>
> >> On Mon, Jun 13, 2011 at 6:06 PM, Julien Nicoulaud
> >> <julien.nicoulaud@xxxxxxxxx> wrote:
> >> > Nice, I will start working on it in this branch:
> >> > https://code.launchpad.net/~julien-nicoulaud/syncany/maven
> >> > I will let you know when it's ready for testing.
> >> >
> >> > 2011/6/13 nocans@xxxxxxxxx <nocans@xxxxxxxxx>
> >> >>
> >> >> I'm all for it, and it sounds a nice opportunity to learn more about
> >> >> maven.
> >> >> I will see what I can do about us having a repo so we can have cake
> and
> >> >> eat it!
> >> >>
> >> >> On Mon, Jun 13, 2011 at 11:23 AM, Julien Nicoulaud
> >> >> <julien.nicoulaud@xxxxxxxxx> wrote:
> >> >>>
> >> >>> Hi all,
> >> >>> Let me give the main reasons why I made this proposition:
> >> >>>  - Right now the project is quite difficult to setup in other IDEs
> >> >>> than
> >> >>> Netbeans (IntelliJ IDEA user here). Maven benefits of a great
> >> >>> integration
> >> >>> with most IDEs, so it makes it easier for developers to get started.
> >> >>>  - The Java libraries are checked in version control, which makes it
> >> >>> very
> >> >>> heavy. Maven pulls dependencies from repositories.
> >> >>>  - The packaging and distribution of assemblies is easy, we can
> easily
> >> >>> package an assembly for Windows, Linux, for development, etc.
> through
> >> >>> descriptor files.
> >> >>>  - The modularisation could be improved, for example it seems to me
> >> >>> that
> >> >>> subpackages in org.syncany.connection.plugins should be packaged in
> >> >>> different Jars ?
> >> >>>  - Also, Maven can handle the release process (doing a VCS tag,
> >> >>> generating the release artifacts, bump version numbers, etc), but
> it's
> >> >>> not
> >> >>> mandatory.
> >> >>>
> >> >>> @Jason: We don't really need a repo, I took a quick look and here is
> >> >>> the
> >> >>> list of dependencies in libs/** that I could not find in Maven
> central
> >> >>> repository:
> >> >>> * AbsoluteLayout
> >> >>> * AppFramework
> >> >>> * eclipselink
> >> >>> * eclipselink-javax.persistence
> >> >>> * jpathwatch
> >> >>> * gdata-*
> >> >>> * j2ssh
> >> >>> These few jars could just stay checked in version control.
> >> >>> Julien
> >> >>> 2011/6/13 nocans@xxxxxxxxx <nocans@xxxxxxxxx>
> >> >>>>
> >> >>>> Maven is quite a treat. A lot of people are using it these days and
> >> >>>> has
> >> >>>> great advantages. I am not a maven expert by any means, but I can
> >> >>>> tell you
> >> >>>> that the nicest thing about it is that you describe a project and
> >> >>>> it's
> >> >>>> dependanices in an xml file so that when you build it all the
> >> >>>> dependancies
> >> >>>> are pulled from your nexus repo, which is just a smart-ish binary
> >> >>>> repo.
> >> >>>> Also, when your project builds successfully your artifacts can be
> >> >>>> stored in
> >> >>>> your repo as snapshots so that others can use them.
> >> >>>> The main idea of maven is that when a developer pulls the source
> >> >>>> there's
> >> >>>> no guesswork as to how to build and deploy the project, it's all
> done
> >> >>>> with
> >> >>>> maven. In doing so, the project has to adhere to certain standards,
> >> >>>> namely
> >> >>>> how the files and folders are laid out which is defined in a maven
> >> >>>> archetype
> >> >>>> and can even be changed if you want.
> >> >>>> This is why I asked if there was some sort of 'public' repo we
> could
> >> >>>> use, since we're an open source project, because to take full
> >> >>>> advantage of
> >> >>>> maven one needs a nexus repo, and I don't have one handy :)
> >> >>>>
> >> >>>>
> >> >>>> On Mon, Jun 13, 2011 at 6:46 AM, Philipp Heckel
> >> >>>> <philipp.heckel@xxxxxxxxx> wrote:
> >> >>>>>
> >> >>>>> I have no experience with Maven or Ant. Are there any significant
> >> >>>>> advantages in using Maven? Ant sort of integrated with Netbeans at
> >> >>>>> the
> >> >>>>> moment ...
> >> >>>>>
> >> >>>>> If there are none, I think I agree with what Jason (nocans) says
> :-)
> >> >>>>>
> >> >>>>> On Sun, Jun 12, 2011 at 1:59 AM, nocans@xxxxxxxxx <
> nocans@xxxxxxxxx>
> >> >>>>> wrote:
> >> >>>>> > Aside from the work of rearranging files and folders to match an
> >> >>>>> > archetype,
> >> >>>>> > I don't think it would be of a great benefit unless the project
> >> >>>>> > had
> >> >>>>> > its own
> >> >>>>> > nexus server.
> >> >>>>> > Is there some sort of free nexus server resource for open source
> >> >>>>> > projects ?
> >> >>>>> >
> >> >>>>> > On Sat, Jun 11, 2011 at 2:30 PM, Julien Nicoulaud
> >> >>>>> > <julien.nicoulaud@xxxxxxxxx> wrote:
> >> >>>>> >>
> >> >>>>> >> Hi all,
> >> >>>>> >> Just wanted to know, are you interested in Maven-inizing the
> >> >>>>> >> project
> >> >>>>> >> ? I
> >> >>>>> >> can do this.
> >> >>>>> >> Cheers,
> >> >>>>> >> Julien
> >> >>>>> >> --
> >> >>>>> >> Mailing list: https://launchpad.net/~syncany-team
> >> >>>>> >> Post to     : syncany-team@xxxxxxxxxxxxxxxxxxx
> >> >>>>> >> Unsubscribe : https://launchpad.net/~syncany-team
> >> >>>>> >> More help   : https://help.launchpad.net/ListHelp
> >> >>>>> >>
> >> >>>>> >
> >> >>>>> >
> >> >>>>> > --
> >> >>>>> > Mailing list: https://launchpad.net/~syncany-team
> >> >>>>> > Post to     : syncany-team@xxxxxxxxxxxxxxxxxxx
> >> >>>>> > Unsubscribe : https://launchpad.net/~syncany-team
> >> >>>>> > More help   : https://help.launchpad.net/ListHelp
> >> >>>>> >
> >> >>>>> >
> >> >>>>
> >> >>>
> >> >>
> >> >
> >> >
> >
> >
>

Follow ups

References