[ http://jira.codehaus.org/browse/MCOMPILER-80?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=208672#action_208672 ]
redstun commented on MCOMPILER-80: ---------------------------------- Grzegorz, it's interesting to read your comments, thanks. Let's do it this way. 1. defaulting to 1.3 as the source and 1.1 as the target is already a problem for now 2. defaulting to another reasonable (for now) source/target levels is can fix the problem for the current mainstream ecosystem, but will be again a problem later, e.g. in the year 2020. And, a quite common 'convention' is that people always assume things we've got for now should work 'for now', Maven as a mainstream Java build tool should always work for the mainstream Java platform with no extra configuration. One of the best values of Maven is convention over configuration, compared to Ant. Interestingly enough, Even Ant is delegating to the JVM that is running Ant to determine the source/target levels. See http://ant.apache.org/manual/CoreTasks/javac.html For enterprise development, source/target levels should be seriously set regardless what the default values are, but for most developers, people are just using the mainstream platform, e.g. the latest JDK/JRE and just want to compile for the mainstream JRE, only when one want to compile for a specific version of JRE, then it becomes necessary to specify the source/target levels. Thanks > Change default source level to 1.5 > ---------------------------------- > > Key: MCOMPILER-80 > URL: http://jira.codehaus.org/browse/MCOMPILER-80 > Project: Maven 2.x Compiler Plugin > Issue Type: Improvement > Reporter: Grzegorz Borkowski > Priority: Minor > > Deafult source level setting for Maven compiler plugin is 1.3, as far as I > remember. This makes no sense. 1.3 is used at this moment only in legacy > applications. Probability of porting such legacy application to Maven 2 is > very small. I was working with such applications - none of them used Maven. > In fact, I don't know any application using Maven, which requires level 1.3. > On the other hand, Maven is used exensively in new applications. Most of them > use Java 5 features (annotations, generics...). All new applications I create > use Maven 2 and Java 5. Every time I setup such application it makes me crazy > that I get errors on my generics and annoations, and I have to setup manually > the source level to 1.5. Come on, we have year 2008, not 2000! Java 5 is here > for several years already. So why Maven compiler plugin does not use the most > reasonable default approach, instead it still assumes we are in 2000 year? If > someone wants to use old java version, than he can change the source level. > By default should be 1.5. > The default setting can be changed in never wersion of maven compiler plugin. -- This message is automatically generated by JIRA. - If you think it was sent incorrectly contact one of the administrators: http://jira.codehaus.org/secure/Administrators.jspa - For more information on JIRA, see: http://www.atlassian.com/software/jira