• Save
5 Reasons Why Maven Sux
Upcoming SlideShare
Loading in...5
×

Like this? Share it with your network

Share

5 Reasons Why Maven Sux

  • 3,532 views
Uploaded on

5 Reasons Why Maven Sux ...

5 Reasons Why Maven Sux
JavaOne CommunityOne 2008
http://www.carlossanchez.eu/

More in: Technology , Business
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
  • i agree at all its very complex to setup maven.
    Are you sure you want to
    Your message goes here
No Downloads

Views

Total Views
3,532
On Slideshare
3,504
From Embeds
28
Number of Embeds
3

Actions

Shares
Downloads
0
Comments
1
Likes
3

Embeds 28

http://www.linkedin.com 13
http://www.slideshare.net 12
https://www.linkedin.com 3

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1.
      • 5 Reasons Why
      • Maven Sux
      • Carlos Sanchez
      • CommunityOne @ JavaOne
      • May 5, 2008
  • 2. About Me
      • During the day
      • Director at Exist Global
      • At night
      • Member of Apache Maven PMC
      • Committer at the Eclipse Foundation
  • 3. #1 Losing control
  • 4. <project> <modelVersion> 4.0.0 </modelVersion> <groupId> org.acme </groupId> <artifactId> acmeapp </artifactId> <version> 1.0-SNAPSHOT </version> <dependencies> <dependency> <groupId> org.hibernate </groupId> <artifactId> hibernate </artifactId> <version> 3.2.6.ga </version> </dependency> <dependency> <groupId> junit </groupId> <artifactId> junit </artifactId> <version> 3.8.1 </version> <scope> test </scope> </dependency> </dependencies> </project>
  • 5. section .text global _start ;must be declared for linker (ld) _start: ;tell linker entry point mov edx,len ;message length mov ecx,msg ;message to write mov ebx,1 ;file descriptor (stdout) mov eax,4 ;system call number (sys_write) int 0x80 ;call kernel mov eax,1 ;system call number (sys_exit) int 0x80 ;call kernel section .data msg db 'Hello, world!',0xa ;our dear string len equ $ - msg ;length of our dear string
  • 6. #2 Repository madness
  • 7. <project> <modelVersion> 4.0.0 </modelVersion> <groupId> org.acme </groupId> <artifactId> acmeapp </artifactId> <version> 1.0-SNAPSHOT </version> <dependencies> <dependency> <groupId> org.hibernate </groupId> <artifactId> hibernate </artifactId> <version> 3.2.6.ga 3.2.7 </version> </dependency> <dependency> <groupId> junit </groupId> <artifactId> junit </artifactId> <version> 3.8.1 </version> <scope> test </scope> </dependency> </dependencies> </project>
  • 8.  
  • 9. myproject/lib hibernate.jar myotherproject/lib hibernate.jar
  • 10. upgrading is so easy
  • 11. productivity!
  • 12. Oh, you forgot ASM or CGLIB or
  • 13. #3 Snapshot downloads
  • 14. <project> <modelVersion> 4.0.0 </modelVersion> <groupId> org.acme </groupId> <artifactId> acmeapp </artifactId> <version> 1.0-SNAPSHOT </version> <dependencies> <dependency> <groupId> org.acme </groupId> <artifactId> mylib </artifactId> <version> 1.0-SNAPSHOT </version> </dependency> </dependencies> </project>
  • 15. Build mylib.jar
  • 16. Send mylib.jar by email
  • 17. Receive mylib.jar
  • 18. Copy mylib.jar to myproject/lib
  • 19. Copy mylib.jar to myotherproject/lib
  • 20. Fix a bug ... shit happens
  • 21. Build mylib.jar ... don't use versions, waste of time
  • 22. Send mylib.jar by email
  • 23. Receive mylib.jar
  • 24. Copy mylib.jar to myproject/lib
  • 25.  
  • 26. you screwed mylib myotherproject doesn't work
  • 27. #4 Reports
  • 28. mvn checkstyle:checkstyle
  • 29. New things to worry about
  • 30. Real men write perfect code
  • 31. any resemblance to existing persons is based on experience
  • 32. Thanks
    • [email_address]
      • http://www.carlossanchez.eu
  • 33. Credits Matrix code : David Asch That was easy! : spackletoe Caution: Ice Fall Hazard : Jeff Wilcox Smiling Girl : Dey Gay Pride : Boss Tweed Magic! : Kaptain Kobold