Skip to content

Commit 2b19d66

Browse files
Plugin test projects should not use "target/test-classes" in .classpath
#2498
1 parent cf168df commit 2b19d66

File tree

1 file changed

+10
-1
lines changed

1 file changed

+10
-1
lines changed

org.eclipse.xtext.xtext.ui/src/org/eclipse/xtext/xtext/ui/wizard/project/XtextProjectCreator.java

Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -117,7 +117,12 @@ private void configureJavaProject(ProjectDescriptor descriptor, JavaProjectFacto
117117
factory.addProjectNatures(JavaCore.NATURE_ID);
118118
factory.addBuilderIds(JavaCore.BUILDER_ID);
119119
for (SourceFolderDescriptor sourceFolder : descriptor.getSourceFolders()) {
120-
String output = sourceFolder.isTest() ? (needsM2eIntegration(descriptor) ? "target/test-classes" : "test-bin") : null;
120+
String output = sourceFolder.isTest() ?
121+
(needsM2eIntegration(descriptor) ?
122+
(needsTychoIntegration(descriptor) ?
123+
"target/classes" : // Tycho will generate into target/classes for eclipse-plugin-test projects
124+
"target/test-classes")
125+
: "test-bin") : null;
121126
factory.addSourceFolder(sourceFolder.getPath(), output, sourceFolder.isTest());
122127
}
123128
factory.setJreContainerEntry(JREContainerProvider.getJREContainerEntry(descriptor.getBree()));
@@ -287,6 +292,10 @@ private boolean needsM2eIntegration(ProjectDescriptor descriptor) {
287292
return descriptor.isPartOfMavenBuild() && descriptor.getConfig().needsMavenBuild();
288293
}
289294

295+
private boolean needsTychoIntegration(ProjectDescriptor descriptor) {
296+
return descriptor.isPartOfMavenBuild() && descriptor.getConfig().needsTychoBuild();
297+
}
298+
290299
private boolean needsBuildshipIntegration(ProjectDescriptor descriptor) {
291300
return descriptor.isPartOfGradleBuild() && descriptor.getConfig().needsGradleBuild();
292301
}

0 commit comments

Comments
 (0)