Return-Path: Delivered-To: apmail-maven-commits-archive@www.apache.org Received: (qmail 61924 invoked from network); 21 Apr 2008 15:55:08 -0000 Received: from hermes.apache.org (HELO mail.apache.org) (140.211.11.2) by minotaur.apache.org with SMTP; 21 Apr 2008 15:55:08 -0000 Received: (qmail 36173 invoked by uid 500); 21 Apr 2008 15:55:09 -0000 Delivered-To: apmail-maven-commits-archive@maven.apache.org Received: (qmail 35912 invoked by uid 500); 21 Apr 2008 15:55:08 -0000 Mailing-List: contact commits-help@maven.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@maven.apache.org Delivered-To: mailing list commits@maven.apache.org Received: (qmail 35899 invoked by uid 99); 21 Apr 2008 15:55:08 -0000 Received: from athena.apache.org (HELO athena.apache.org) (140.211.11.136) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 21 Apr 2008 08:55:08 -0700 X-ASF-Spam-Status: No, hits=-2000.0 required=10.0 tests=ALL_TRUSTED X-Spam-Check-By: apache.org Received: from [140.211.11.3] (HELO eris.apache.org) (140.211.11.3) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 21 Apr 2008 15:54:32 +0000 Received: by eris.apache.org (Postfix, from userid 65534) id 9DA0F1A9832; Mon, 21 Apr 2008 08:54:45 -0700 (PDT) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r650178 - in /maven/plugins/trunk/maven-eclipse-plugin/src: main/java/org/apache/maven/plugin/eclipse/writers/ main/java/org/apache/maven/plugin/ide/ test/resources/projects/project-30/expected/ Date: Mon, 21 Apr 2008 15:54:44 -0000 To: commits@maven.apache.org From: nicolas@apache.org X-Mailer: svnmailer-1.0.8 Message-Id: <20080421155445.9DA0F1A9832@eris.apache.org> X-Virus-Checked: Checked by ClamAV on apache.org Author: nicolas Date: Mon Apr 21 08:54:39 2008 New Revision: 650178 URL: http://svn.apache.org/viewvc?rev=650178&view=rev Log: MECLIPSE-437 : include java/javax api dependency prior the classpath container Modified: maven/plugins/trunk/maven-eclipse-plugin/src/main/java/org/apache/maven/plugin/eclipse/writers/EclipseClasspathWriter.java maven/plugins/trunk/maven-eclipse-plugin/src/main/java/org/apache/maven/plugin/ide/IdeDependency.java maven/plugins/trunk/maven-eclipse-plugin/src/test/resources/projects/project-30/expected/.classpath Modified: maven/plugins/trunk/maven-eclipse-plugin/src/main/java/org/apache/maven/plugin/eclipse/writers/EclipseClasspathWriter.java URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-eclipse-plugin/src/main/java/org/apache/maven/plugin/eclipse/writers/EclipseClasspathWriter.java?rev=650178&r1=650177&r2=650178&view=diff ============================================================================== --- maven/plugins/trunk/maven-eclipse-plugin/src/main/java/org/apache/maven/plugin/eclipse/writers/EclipseClasspathWriter.java (original) +++ maven/plugins/trunk/maven-eclipse-plugin/src/main/java/org/apache/maven/plugin/eclipse/writers/EclipseClasspathWriter.java Mon Apr 21 08:54:39 2008 @@ -324,6 +324,26 @@ writer.addAttribute( ATTR_PATH, defaultOutput ); writer.endElement(); + Set addedDependencies = new HashSet(); + // TODO if (..magic property equals orderDependencies..) + + // ---------------------------------------------------------------------- + // Java API dependencies that may complete the classpath container so must + // be declared BEFORE so that container access rules don't fail + // ---------------------------------------------------------------------- + IdeDependency[] depsToWrite = config.getDepsOrdered(); + for ( int j = 0; j < depsToWrite.length; j++ ) + { + IdeDependency dep = depsToWrite[j]; + if ( dep.isJavaApi() ) + { + String depId = + dep.getGroupId() + ":" + dep.getArtifactId() + ":" + dep.getClassifier() + ":" + dep.getVersion(); + addDependency( writer, dep ); + addedDependencies.add( depId ); + } + } + // ---------------------------------------------------------------------- // Container classpath entries // ---------------------------------------------------------------------- @@ -339,9 +359,6 @@ // ---------------------------------------------------------------------- // The dependencies // ---------------------------------------------------------------------- - Set addedDependencies = new HashSet(); - // TODO if (..magic property equals orderDependencies..) - IdeDependency[] depsToWrite = config.getDepsOrdered(); for ( int j = 0; j < depsToWrite.length; j++ ) { IdeDependency dep = depsToWrite[j]; Modified: maven/plugins/trunk/maven-eclipse-plugin/src/main/java/org/apache/maven/plugin/ide/IdeDependency.java URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-eclipse-plugin/src/main/java/org/apache/maven/plugin/ide/IdeDependency.java?rev=650178&r1=650177&r2=650178&view=diff ============================================================================== --- maven/plugins/trunk/maven-eclipse-plugin/src/main/java/org/apache/maven/plugin/ide/IdeDependency.java (original) +++ maven/plugins/trunk/maven-eclipse-plugin/src/main/java/org/apache/maven/plugin/ide/IdeDependency.java Mon Apr 21 08:54:39 2008 @@ -523,6 +523,14 @@ return isSystemScoped() && !getFile().getAbsolutePath().startsWith( modulesTop.getAbsolutePath() ); } + /** + * @return true if this dependency is a Java API + */ + public boolean isJavaApi() + { + return groupId.startsWith( "java." ) || groupId.startsWith( "javax." ); + } + /** * {@inheritDoc} */ Modified: maven/plugins/trunk/maven-eclipse-plugin/src/test/resources/projects/project-30/expected/.classpath URL: http://svn.apache.org/viewvc/maven/plugins/trunk/maven-eclipse-plugin/src/test/resources/projects/project-30/expected/.classpath?rev=650178&r1=650177&r2=650178&view=diff ============================================================================== --- maven/plugins/trunk/maven-eclipse-plugin/src/test/resources/projects/project-30/expected/.classpath (original) +++ maven/plugins/trunk/maven-eclipse-plugin/src/test/resources/projects/project-30/expected/.classpath Mon Apr 21 08:54:39 2008 @@ -1,5 +1,5 @@ - +