Goodbye SVN, Hello Git

April 29, 2011 By Brian Demers 2

We are moving both our public and private source repositories to Git for a few reasons:

  • Git works better for people with slow or lagging connections
  • Branch management is easy
  • Submitting patches via a pull request is easier to deal with than a patch attached to a bug report

We started out with SVN mostly because that was what everyone was used to. A year ago or so, one of our remote developers started using a git-svn mirror to remove some of the latency issues they had with SVN. Someone else put together a ten page wiki on how to easily use a git-svn mirror and push back to the canonical SVN repo. As time went on, interest in git grew and new modules were created in git, instead of our SVN repositories.  Finally there was a push to move everything to git.

(more…)

Categories: How-To, Sonatype Tags: ,

Tycho: Building Eclipse plugins with Maven

April 27, 2011 By hloney Comments Off

As part of the Eclipse Live series of webinars, Sonatype software developer Pascal Rapicault is giving a presentation on Tycho: Building Eclipse plugins with Maven.

About the webinar:

Tycho is a set of Maven plugins and extensions for building Eclipse plugins and OSGI bundles with Maven. Eclipse plugins and OSGI bundles have their own metadata for expressing dependencies, source folder locations, etc. that are normally found in a Maven POM. Tycho uses native metadata for Eclipse plugins and OSGi bundles and uses the POM to configure and drive the build. Tycho supports bundles, fragments, features, update site projects and RCP applications. Tycho also knows how to run JUnit test plugins using OSGi runtime and there is also support for sharing build results using Maven artifact repositories.

Join this webinar to get an overview of the Tycho project and to learn what plans the project has for the future.

  • Date: May 3, 2011
  • Time: 9:00 am PST / 12:00 pm EST / 4:00 pm UTC / 6:00 pm CET
  • Length: 60 minutes
  • Enroll here!
Categories: Tycho Tags: , ,

Sonatype Maven Training class available during European business hours

April 26, 2011 By hloney Comments Off

UPDATE :: Enrollment for this class is now closed

Due to popular request, Sonatype has decided to offer a MVN-101 training course in May during European business hours. The training course will be led by Anders Hammar of Devoteam Sweden, a certified Sonatype Training Partner.

Course details:

  • MVN-101
  • Tuesday May 10, 2011
  • European Hours 9:00 am – 4:00 pm CEST (GMT + 02:00)
  • ENROLL TODAY!

Maven Mechanics MVN-101 is the premier Java developer training course. It comprehensively covers Maven installation and configuration, explains the motivation behind Maven and gives an overview of related development tools. You will leave this Maven tutorial equipped with a full understanding of the Maven Project Object Model (POM) and a firm grasp of the underlying fundamentals of this development kit including:

  • The Maven lifecycle
  • Maven plugins and goals
  • Multi-module Maven projects
  • The contents of the Project Object Model (POM)
Categories: Maven, Sonatype Tags: ,

Webinar replay for "Enterprise Repository Management" now available

April 21, 2011 By hloney Comments Off

If you missed our latest webinar “Enterprise Repository Management” you can view a recorded version of the webinar here.

Now that you’re primed with knowledge, jump in and see what a repository can do for your development workflow:

If you have any questions about Nexus or repositories in general, we have engineers (not just sales guys) who would be happy to speak with you.

How not to download the Internet

April 19, 2011 By Tim O'Brien 40

A criticism I hear often about Maven is, “every time you run Maven, it downloads the internet.” I understand the criticism, as the first time you run Maven it has to populate your local repository. Maven downloads plugins and artifacts that your project depends on. Maven does in fact download artifacts from remote repositories, but it downloads the artifact once and keeps a local cache.

Maven only downloads most of these dependencies because you’ve added them to your project. If you are unhappy that Maven is “downloading the internet” then stop developing software that depends on external libraries. Easy, right? Stop using Spring and Hibernate, stop referencing the commons libraries, and do everything yourself. This would be one way to avoid downloading any artifacts from a remote repository. Stop using Maven to build your software and write your own build tool that has all of the capabilities of Maven and every imaginable Maven plugin baked into it.

Not a workable solution, right? The fact of the matter is that your software has dependencies on external libraries. If you find yourself constantly “downloading the internet” there’s a reason. You are depending on projects that depend on “the internet” or, your projects have a very wide set of dependencies that may need to be trimmed.

How can we avoid creating projects and POMs that “download the internet”? The simple answer is that everyone needs to start focusing on dependencies. Library developers need to be smarter about creating leaner, meaner dependency lists, and you need to start evaluating your own dependencies with an eye on efficiency.

(more…)

Categories: Nexus, Sonatype Tags: , ,