Guest User

Untitled

a guest
Jul 23rd, 2018
62
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.47 KB | None | 0 0
  1. Index: org.maven.ide.eclipse.wtp/src/org/maven/ide/eclipse/wtp/AbstractProjectConfiguratorDelegate.java
  2. ===================================================================
  3. --- org.maven.ide.eclipse.wtp/src/org/maven/ide/eclipse/wtp/AbstractProjectConfiguratorDelegate.java (revision 3540)
  4. +++ org.maven.ide.eclipse.wtp/src/org/maven/ide/eclipse/wtp/AbstractProjectConfiguratorDelegate.java (working copy)
  5. @@ -54,7 +54,6 @@
  6. static final IClasspathAttribute NONDEPENDENCY_ATTRIBUTE = JavaCore.newClasspathAttribute(
  7. IClasspathDependencyConstants.CLASSPATH_COMPONENT_NON_DEPENDENCY, "");
  8.  
  9. -
  10. protected final MavenProjectManager projectManager;
  11.  
  12. protected final IMavenMarkerManager mavenMarkerManager;
  13. @@ -63,19 +62,21 @@
  14. this.projectManager = MavenPlugin.getDefault().getMavenProjectManager();
  15. this.mavenMarkerManager = MavenPlugin.getDefault().getMavenMarkerManager();
  16. }
  17. -
  18. - public void configureProject(IProject project, MavenProject mavenProject, IProgressMonitor monitor) throws MarkedException {
  19. +
  20. + public void configureProject(IProject project, MavenProject mavenProject, IProgressMonitor monitor)
  21. + throws MarkedException {
  22. try {
  23. mavenMarkerManager.deleteMarkers(project);
  24. configure(project, mavenProject, monitor);
  25. - } catch (CoreException cex) {
  26. + } catch(CoreException cex) {
  27. //TODO Filter out constraint violations
  28. mavenMarkerManager.addErrorMarkers(project, cex);
  29. - throw new MarkedException("Unable to configure "+project.getName(), cex);
  30. + throw new MarkedException("Unable to configure " + project.getName(), cex);
  31. }
  32. }
  33. -
  34. - protected abstract void configure(IProject project, MavenProject mavenProject, IProgressMonitor monitor) throws CoreException;
  35. +
  36. + protected abstract void configure(IProject project, MavenProject mavenProject, IProgressMonitor monitor)
  37. + throws CoreException;
  38.  
  39. protected List<IMavenProjectFacade> getWorkspaceDependencies(IProject project, MavenProject mavenProject) {
  40. Set<IProject> projects = new HashSet<IProject>();
  41. @@ -84,19 +85,20 @@
  42. for(Artifact artifact : artifacts) {
  43. IMavenProjectFacade dependency = projectManager.getMavenProject(artifact.getGroupId(), artifact.getArtifactId(),
  44. artifact.getVersion());
  45. -
  46. - if((Artifact.SCOPE_COMPILE.equals(artifact.getScope())
  47. - || Artifact.SCOPE_RUNTIME.equals(artifact.getScope())) //MNGECLIPSE-1578 Runtime dependencies should be deployed
  48. +
  49. + if((Artifact.SCOPE_COMPILE.equals(artifact.getScope()) || Artifact.SCOPE_RUNTIME.equals(artifact.getScope())) //MNGECLIPSE-1578 Runtime dependencies should be deployed
  50. //TODO breaks classpath && !artifact.isOptional() //MNGECLIPSE-1119 optional projects shouldn't be deployed
  51. - && dependency != null && !dependency.getProject().equals(project) && dependency.getFullPath(artifact.getFile()) != null
  52. - && projects.add(dependency.getProject())) {
  53. + && dependency != null
  54. + && !dependency.getProject().equals(project)
  55. + && dependency.getFullPath(artifact.getFile()) != null && projects.add(dependency.getProject())) {
  56. dependencies.add(dependency);
  57. }
  58. }
  59. return dependencies;
  60. }
  61.  
  62. - protected void configureWtpUtil(IProject project, MavenProject mavenProject, IProgressMonitor monitor) throws CoreException {
  63. + protected void configureWtpUtil(IProject project, MavenProject mavenProject, IProgressMonitor monitor)
  64. + throws CoreException {
  65. // Adding utility facet on JEE projects is not allowed
  66. if(WTPProjectsUtil.isJavaEEProject(project)) {
  67. return;
  68. @@ -114,11 +116,11 @@
  69. }
  70.  
  71. facetedProject.modify(actions, monitor);
  72. -
  73. +
  74. //MNGECLIPSE-904 remove tests folder links for utility jars
  75. //TODO handle modules in a parent pom (the following doesn't work)
  76. removeTestFolderLinks(project, mavenProject, monitor, "/");
  77. -
  78. +
  79. //Remove "library unavailable at runtime" warning.
  80. addContainerAttribute(project, NONDEPENDENCY_ATTRIBUTE, monitor);
  81. }
  82. @@ -135,12 +137,22 @@
  83. protected void removeTestFolderLinks(IProject project, MavenProject mavenProject, IProgressMonitor monitor,
  84. String folder) throws CoreException {
  85. IVirtualComponent component = ComponentCore.createComponent(project);
  86. - if (component != null){
  87. + if(component != null) {
  88. IVirtualFolder jsrc = component.getRootFolder().getFolder(folder);
  89. + if(!jsrc.exists()) {
  90. + return;
  91. + }
  92. +
  93. for(IPath location : MavenProjectUtils.getSourceLocations(project, mavenProject.getTestCompileSourceRoots())) {
  94. + if(!location.toFile().exists()) {
  95. + continue;
  96. + }
  97. jsrc.removeLink(location, 0, monitor);
  98. }
  99. for(IPath location : MavenProjectUtils.getResourceLocations(project, mavenProject.getTestResources())) {
  100. + if(!location.toFile().exists()) {
  101. + continue;
  102. + }
  103. jsrc.removeLink(location, 0, monitor);
  104. }
  105. }
  106. @@ -150,7 +162,8 @@
  107. protected void addContainerAttribute(IProject project, IClasspathAttribute attribute, IProgressMonitor monitor)
  108. throws JavaModelException {
  109. IJavaProject javaProject = JavaCore.create(project);
  110. - if (javaProject == null) return;
  111. + if(javaProject == null)
  112. + return;
  113. IClasspathEntry[] cp = javaProject.getRawClasspath();
  114. for(int i = 0; i < cp.length; i++ ) {
  115. if(IClasspathEntry.CPE_CONTAINER == cp[i].getEntryKind()
Add Comment
Please, Sign In to add comment