Thanks Sebastian, Where to find the super pom.xml?
regards, Lin On Mon, Mar 30, 2015 at 1:18 AM, Sebastian Oerding < sebastian.oerd...@robotron.de> wrote: > pom.xml uses inheritance. There is a so called 'super POM' provided with > the maven installation from which all entries are inherited if not added / > overwritten by you. > > Newer versions of Maven have Java 1.6 as default. > > With regards > Sebastian > > -----Ursprüngliche Nachricht----- > Von: Lin Ma [mailto:lin...@gmail.com] > Gesendet: Montag, 30. März 2015 09:56 > An: Maven Users List > Betreff: Re: about source and target in maven-compiler-plugin > > Thanks all the same Sebastian. Your reply is very helpful and bring us > further thoughts. > > regards, > Lin > > On Mon, Mar 30, 2015 at 12:47 AM, Sebastian Oerding < > sebastian.oerd...@robotron.de> wrote: > > > Hi Lin, > > > > I just tried my example and Maxim is right. I thought that the source > > should take the API compatibility into account it seems that it is not > > this way. Hence if the classes are successfully compiled (which > > requires a JDK > > > 1.5) and you are executing them with Java 1.5 the StringBuilder class > > will not be in place -> ClassNotFoundException (the class format > > should be as needed for Java 1.5 due to the target). > > > > However I will not tell anymore about it as I'm not completely sure > > about the moment and I do not have the time to really dig into this. > Sorry. > > Detailed information about this is available in the net. In an earlier > > email someone already provided links for the Maven documentation. > > > > Furthermore details about setting the compiler level can be found for > > example in the Sun Certified Java Programmer Study Guide. > > > > With regards > > Sebastian > > > > -----Ursprüngliche Nachricht----- > > Von: Lin Ma [mailto:lin...@gmail.com] > > Gesendet: Montag, 30. März 2015 09:38 > > An: Maven Users List > > Betreff: Re: about source and target in maven-compiler-plugin > > > > Hi Maxim, > > > > Why compiler will not fail? Supposing StringBuilder is a class in JDK > > 1.6, but we force compiler to use 1.5 which has no such class? Please > > feel free to correct me if I am wrong. > > > > regards, > > Lin > > > > On Mon, Mar 30, 2015 at 12:33 AM, Maxim Solodovnik > > <solomax...@gmail.com> > > wrote: > > > > > If I'm not mistaken compiler will not fail in this case BUT the > > > application will fail in runtime (in case Java 1.5 is used) due to > > > StringBuilder class is missing in JDK > > > > > > On Mon, Mar 30, 2015 at 1:20 PM, Lin Ma <lin...@gmail.com> wrote: > > > > > > > Thanks Sebastian, > > > > > > > > 1. I am using JDK 1.7/1.8 for both development and deployment in > > > > runtime, shall I change 1.5 of source and target to 1.7/1.8? > > > > > > > > 2. In your example, "for example you can write source code using a > > > > JDK > > > 1.6 > > > > which is compliant to Java 1.5. However you can also use the > > > StringBuilder > > > > class which does not exist in Java 1.5", I think using JDK 1.6 > > > > specific feature but using 1.5 complier will fail? No? Please feel > > > > free to correct me. > > > > > > > > regards, > > > > Lin > > > > > > > > On Mon, Mar 30, 2015 at 12:14 AM, Sebastian Oerding < > > > > sebastian.oerd...@robotron.de> wrote: > > > > > > > > > source -> The level (JDK version) to which the source code must > > > > > be compliant to, for example you can write source code using a > > > > > JDK > > > > > 1.6 > > > which > > > > > is compliant to Java 1.5. However you can also use the > > > > > StringBuilder > > > > class > > > > > which does not exist in Java 1.5 target -> The class version of > > > > > the generated class files. The class > > > > format > > > > > changes with some Java version, for example as some stuff may be > > > > > added > > > > for > > > > > performance reason. For example if a new byte code instruction > > > > > comes up (like 'invokedynamic') this really makes a change. Or > > > > > another example > > > > (I'm > > > > > not really sure about it): As far as I think a stack map has > > > > > been added from Java 5 to Java 1.6. This should improve > > > > > performance and makes > > > subtle > > > > > differences when ClassNotFoundException are thrown. You can use > > > > > a JDK > > > to > > > > > compile code for different but lower versions. This way can > > > > > benefit > > > from > > > > > some optimizations which weren't available with the old JDK and > > > > > are compatible. > > > > > > > > > > With regards > > > > > Sebastian > > > > > > > > > > -----Ursprüngliche Nachricht----- > > > > > Von: Lin Ma [mailto:lin...@gmail.com] > > > > > Gesendet: Montag, 30. März 2015 07:46 > > > > > An: Maven Users List > > > > > Betreff: about source and target in maven-compiler-plugin > > > > > > > > > > Hello Maven masters, > > > > > > > > > > For maven-compiler-plugin(a sample below), have a quick question. > > > > > I > > > read > > > > > this document > > > > > (http://maven.apache.org/plugins/maven-compiler-plugin/ > > > ), > > > > > and confused what means source and target 1.5 here, it seems it > > > > > is an internal version number of Maven, independent of JDK? > > > > > > > > > > <plugin> > > > > > <artifactId>maven-compiler-plugin</artifactId> > > > > > <version>2.3.2</version> > > > > > <configuration> > > > > > <source>1.5</source> > > > > > <target>1.5</target> > > > > > </configuration> > > > > > </plugin> > > > > > > > > > > thanks in advance, > > > > > Lin > > > > > > > > > > ---------------------------------------------------------------- > > > > > -- > > > > > --- To unsubscribe, e-mail: users-unsubscr...@maven.apache.org > > > > > For additional commands, e-mail: users-h...@maven.apache.org > > > > > > > > > > > > > > > > > > > > > -- > > > WBR > > > Maxim aka solomax > > > > > >