<ul><ul><li>5 Reasons Why </li></ul></ul><ul><ul><li>Maven Sux </li></ul></ul><ul><ul><li>Carlos Sanchez </li></ul></ul><u...
About Me <ul><ul><li>During the day </li></ul></ul><ul><ul><li>Director at Exist Global </li></ul></ul><ul><ul><li>At nigh...
#1 Losing control
<project> <modelVersion> 4.0.0 </modelVersion> <groupId> org.acme </groupId> <artifactId> acmeapp </artifactId> <version> ...
section .text global _start ;must be declared for linker (ld) _start: ;tell linker entry point mov edx,len ;message length...
#2 Repository madness
<project> <modelVersion> 4.0.0 </modelVersion> <groupId> org.acme </groupId> <artifactId> acmeapp </artifactId> <version> ...
 
myproject/lib hibernate.jar myotherproject/lib hibernate.jar
upgrading is so easy
productivity!
Oh, you forgot ASM or CGLIB or
#3 Snapshot downloads
<project> <modelVersion> 4.0.0 </modelVersion> <groupId> org.acme </groupId> <artifactId> acmeapp </artifactId> <version> ...
Build mylib.jar
Send mylib.jar by email
Receive mylib.jar
Copy mylib.jar to myproject/lib
Copy mylib.jar to myotherproject/lib
Fix a bug ... shit happens
Build mylib.jar ... don't use versions, waste of time
Send mylib.jar by email
Receive mylib.jar
Copy mylib.jar to myproject/lib
 
you screwed mylib myotherproject doesn't work
#4 Reports
mvn checkstyle:checkstyle
New things to worry about
Real men write perfect code
any resemblance to existing persons is based on experience
Thanks <ul><li>[email_address] </li></ul><ul><ul><li>http://www.carlossanchez.eu </li></ul></ul>
Credits Matrix code : David Asch That was easy! : spackletoe Caution: Ice Fall Hazard : Jeff Wilcox Smiling Girl : Dey Gay...
Upcoming SlideShare
Loading in...5
×

5 Reasons Why Maven Sux

2,088

Published on

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

Published in: Technology, Business
1 Comment
4 Likes
Statistics
Notes
  • i agree at all its very complex to setup maven.
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here
No Downloads
Views
Total Views
2,088
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
0
Comments
1
Likes
4
Embeds 0
No embeds

No notes for slide
  • Transcript of "5 Reasons Why Maven Sux"

    1. 1. <ul><ul><li>5 Reasons Why </li></ul></ul><ul><ul><li>Maven Sux </li></ul></ul><ul><ul><li>Carlos Sanchez </li></ul></ul><ul><ul><li>CommunityOne @ JavaOne </li></ul></ul><ul><ul><li>May 5, 2008 </li></ul></ul>
    2. 2. About Me <ul><ul><li>During the day </li></ul></ul><ul><ul><li>Director at Exist Global </li></ul></ul><ul><ul><li>At night </li></ul></ul><ul><ul><li>Member of Apache Maven PMC </li></ul></ul><ul><ul><li>Committer at the Eclipse Foundation </li></ul></ul>
    3. 3. #1 Losing control
    4. 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. 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. 6. #2 Repository madness
    7. 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
    9. 10. upgrading is so easy
    10. 11. productivity!
    11. 12. Oh, you forgot ASM or CGLIB or
    12. 13. #3 Snapshot downloads
    13. 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>
    14. 15. Build mylib.jar
    15. 16. Send mylib.jar by email
    16. 17. Receive mylib.jar
    17. 18. Copy mylib.jar to myproject/lib
    18. 19. Copy mylib.jar to myotherproject/lib
    19. 20. Fix a bug ... shit happens
    20. 21. Build mylib.jar ... don't use versions, waste of time
    21. 22. Send mylib.jar by email
    22. 23. Receive mylib.jar
    23. 24. Copy mylib.jar to myproject/lib
    24. 26. you screwed mylib myotherproject doesn't work
    25. 27. #4 Reports
    26. 28. mvn checkstyle:checkstyle
    27. 29. New things to worry about
    28. 30. Real men write perfect code
    29. 31. any resemblance to existing persons is based on experience
    30. 32. Thanks <ul><li>[email_address] </li></ul><ul><ul><li>http://www.carlossanchez.eu </li></ul></ul>
    31. 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

    ×