From 5282f2398a32eb66be2f78e4917e661458706b20 Mon Sep 17 00:00:00 2001 From: Dietrich Travkin Date: Tue, 12 May 2026 11:09:34 +0200 Subject: [PATCH 1/3] docs: Extend contribution guide Describe how to import projects and how to run them in Eclipse --- CONTRIBUTING.md | 23 ++++++++++++++++++++++- 1 file changed, 22 insertions(+), 1 deletion(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 4b53bef7..c0a4af39 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -20,6 +20,8 @@ When you submit a pull request, a CLA bot will automatically determine whether y - **Maven 3.8+** (or use the provided Maven wrapper `./mvnw`) - **Node.js 22.13** or later, with npm - **Eclipse IDE for Eclipse Committers 2024-03** or later (for development) +- Recommended: **Eclipse Checkstyle plugin** for code style compliance + (e.g. install from update site: https://checkstyle.org/eclipse-cs-update-site/) ### Building the Project @@ -53,7 +55,26 @@ The installable P2 repository is generated in `com.microsoft.copilot.eclipse.rep ### Running in Eclipse 1. Import all modules into your Eclipse workspace. -2. Use the launch configurations in the `launch/` directory. + * Select *File > Import... > General > Existing projects into Workspace*, + select the root directory of the copilot-for-eclipse git repo, + activate the check box *Search for nested projects*, and finish the wizard. + * Do import additional projects using the import wizard for Maven project (without a `.project` file): + Select *File > Import... > Maven > Existing Maven Projects*, + * Do also import the agent bundle for your OS (e.g., `com.microsoft.copilot.eclipse.core.agent.win-x64`) + after building the project with npm and maven or import all OS-specific agent bundles. +2. Activate one of the target platforms, i.e. open one of the target definition files and select `Set As Active Target Platform`. + * target-terminal.target (Eclipse 4.37+) + * target-tm-terminal.target (Eclipse 4.36 and earlier) +3. For using the Checkstyle configuration (assuming you have installed the Eclipse Checkstyle plugin, see prerequisites), + add a new named Checkstyle configuration. + * Select *Window > Preferences > Checkstyle* and press the *New...* button. + * Select Type="Project Relative Configuration", **name="copilot4eclipse"**, and choose the location using the *Browse...* button. + The `checkstyle.xml` file is in the git repository root folder in the project "github-copilot-for-eclipse". +4. Use the launch configurations in the `launch/` directory, e.g. for launching a new Eclipse IDE with Copilot plug-ins. + * Check the selected plug-ins in your launch configuration (in *Plug-ins* tab)and remove any OS-specific agent bundle that does not fit + to your OS and remove all test bundles from the selected plug-ins from your Eclipse workspace. + * Validate your config and ensure that all dependencies are resolved. + Try *Select Required* button if something is missing. ## How to Contribute From 31d101590d6a5cfb752f3e064623730ebe3aa0ff Mon Sep 17 00:00:00 2001 From: Dietrich Travkin Date: Tue, 12 May 2026 11:41:23 +0200 Subject: [PATCH 2/3] chore: Add missing .project files and Eclipse settings Make all projects importable via File > Import... > General > Existing Projects into Workspace, no need to use the Maven project import wizard. --- CONTRIBUTING.md | 6 ++-- .../.project | 28 +++++++++++++++++++ .../.settings/org.eclipse.m2e.core.prefs | 4 +++ .../.project | 28 +++++++++++++++++++ .../.settings/org.eclipse.m2e.core.prefs | 4 +++ .../.project | 28 +++++++++++++++++++ .../.settings/org.eclipse.m2e.core.prefs | 4 +++ .../.project | 28 +++++++++++++++++++ .../.settings/org.eclipse.m2e.core.prefs | 4 +++ .../.project | 28 +++++++++++++++++++ .../.settings/org.eclipse.m2e.core.prefs | 4 +++ .../.project | 28 +++++++++++++++++++ .../.settings/org.eclipse.m2e.core.prefs | 4 +++ .../.project | 23 +++++++++++++++ .../.settings/org.eclipse.m2e.core.prefs | 4 +++ .../.project | 17 +++++++++++ .../.settings/org.eclipse.m2e.core.prefs | 4 +++ 17 files changed, 242 insertions(+), 4 deletions(-) create mode 100644 com.microsoft.copilot.eclipse.branding/.project create mode 100644 com.microsoft.copilot.eclipse.branding/.settings/org.eclipse.m2e.core.prefs create mode 100644 com.microsoft.copilot.eclipse.core.agent.linux.aarch64/.project create mode 100644 com.microsoft.copilot.eclipse.core.agent.linux.aarch64/.settings/org.eclipse.m2e.core.prefs create mode 100644 com.microsoft.copilot.eclipse.core.agent.linux.x64/.project create mode 100644 com.microsoft.copilot.eclipse.core.agent.linux.x64/.settings/org.eclipse.m2e.core.prefs create mode 100644 com.microsoft.copilot.eclipse.core.agent.macosx.aarch64/.project create mode 100644 com.microsoft.copilot.eclipse.core.agent.macosx.aarch64/.settings/org.eclipse.m2e.core.prefs create mode 100644 com.microsoft.copilot.eclipse.core.agent.macosx.x64/.project create mode 100644 com.microsoft.copilot.eclipse.core.agent.macosx.x64/.settings/org.eclipse.m2e.core.prefs create mode 100644 com.microsoft.copilot.eclipse.core.agent.win32/.project create mode 100644 com.microsoft.copilot.eclipse.core.agent.win32/.settings/org.eclipse.m2e.core.prefs create mode 100644 com.microsoft.copilot.eclipse.feature/.project create mode 100644 com.microsoft.copilot.eclipse.feature/.settings/org.eclipse.m2e.core.prefs create mode 100644 com.microsoft.copilot.eclipse.repository/.project create mode 100644 com.microsoft.copilot.eclipse.repository/.settings/org.eclipse.m2e.core.prefs diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index c0a4af39..e78e21d4 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -58,9 +58,7 @@ The installable P2 repository is generated in `com.microsoft.copilot.eclipse.rep * Select *File > Import... > General > Existing projects into Workspace*, select the root directory of the copilot-for-eclipse git repo, activate the check box *Search for nested projects*, and finish the wizard. - * Do import additional projects using the import wizard for Maven project (without a `.project` file): - Select *File > Import... > Maven > Existing Maven Projects*, - * Do also import the agent bundle for your OS (e.g., `com.microsoft.copilot.eclipse.core.agent.win-x64`) + * Do also import the agent bundle for your OS (e.g., `com.microsoft.copilot.eclipse.core.agent.win32`) after building the project with npm and maven or import all OS-specific agent bundles. 2. Activate one of the target platforms, i.e. open one of the target definition files and select `Set As Active Target Platform`. * target-terminal.target (Eclipse 4.37+) @@ -71,7 +69,7 @@ The installable P2 repository is generated in `com.microsoft.copilot.eclipse.rep * Select Type="Project Relative Configuration", **name="copilot4eclipse"**, and choose the location using the *Browse...* button. The `checkstyle.xml` file is in the git repository root folder in the project "github-copilot-for-eclipse". 4. Use the launch configurations in the `launch/` directory, e.g. for launching a new Eclipse IDE with Copilot plug-ins. - * Check the selected plug-ins in your launch configuration (in *Plug-ins* tab)and remove any OS-specific agent bundle that does not fit + * Check the selected plug-ins in your launch configuration (in *Plug-ins* tab) and remove any OS-specific agent bundle that does not fit to your OS and remove all test bundles from the selected plug-ins from your Eclipse workspace. * Validate your config and ensure that all dependencies are resolved. Try *Select Required* button if something is missing. diff --git a/com.microsoft.copilot.eclipse.branding/.project b/com.microsoft.copilot.eclipse.branding/.project new file mode 100644 index 00000000..f25cf55b --- /dev/null +++ b/com.microsoft.copilot.eclipse.branding/.project @@ -0,0 +1,28 @@ + + + com.microsoft.copilot.eclipse.branding + + + + + + org.eclipse.pde.ManifestBuilder + + + + + org.eclipse.pde.SchemaBuilder + + + + + org.eclipse.m2e.core.maven2Builder + + + + + + org.eclipse.m2e.core.maven2Nature + org.eclipse.pde.PluginNature + + diff --git a/com.microsoft.copilot.eclipse.branding/.settings/org.eclipse.m2e.core.prefs b/com.microsoft.copilot.eclipse.branding/.settings/org.eclipse.m2e.core.prefs new file mode 100644 index 00000000..14b697b7 --- /dev/null +++ b/com.microsoft.copilot.eclipse.branding/.settings/org.eclipse.m2e.core.prefs @@ -0,0 +1,4 @@ +activeProfiles= +eclipse.preferences.version=1 +resolveWorkspaceProjects=true +version=1 diff --git a/com.microsoft.copilot.eclipse.core.agent.linux.aarch64/.project b/com.microsoft.copilot.eclipse.core.agent.linux.aarch64/.project new file mode 100644 index 00000000..bcd9d4b9 --- /dev/null +++ b/com.microsoft.copilot.eclipse.core.agent.linux.aarch64/.project @@ -0,0 +1,28 @@ + + + com.microsoft.copilot.eclipse.core.agent.linux.aarch64 + + + + + + org.eclipse.pde.ManifestBuilder + + + + + org.eclipse.pde.SchemaBuilder + + + + + org.eclipse.m2e.core.maven2Builder + + + + + + org.eclipse.m2e.core.maven2Nature + org.eclipse.pde.PluginNature + + diff --git a/com.microsoft.copilot.eclipse.core.agent.linux.aarch64/.settings/org.eclipse.m2e.core.prefs b/com.microsoft.copilot.eclipse.core.agent.linux.aarch64/.settings/org.eclipse.m2e.core.prefs new file mode 100644 index 00000000..14b697b7 --- /dev/null +++ b/com.microsoft.copilot.eclipse.core.agent.linux.aarch64/.settings/org.eclipse.m2e.core.prefs @@ -0,0 +1,4 @@ +activeProfiles= +eclipse.preferences.version=1 +resolveWorkspaceProjects=true +version=1 diff --git a/com.microsoft.copilot.eclipse.core.agent.linux.x64/.project b/com.microsoft.copilot.eclipse.core.agent.linux.x64/.project new file mode 100644 index 00000000..caf59c07 --- /dev/null +++ b/com.microsoft.copilot.eclipse.core.agent.linux.x64/.project @@ -0,0 +1,28 @@ + + + com.microsoft.copilot.eclipse.core.agent.linux.x64 + + + + + + org.eclipse.pde.ManifestBuilder + + + + + org.eclipse.pde.SchemaBuilder + + + + + org.eclipse.m2e.core.maven2Builder + + + + + + org.eclipse.m2e.core.maven2Nature + org.eclipse.pde.PluginNature + + diff --git a/com.microsoft.copilot.eclipse.core.agent.linux.x64/.settings/org.eclipse.m2e.core.prefs b/com.microsoft.copilot.eclipse.core.agent.linux.x64/.settings/org.eclipse.m2e.core.prefs new file mode 100644 index 00000000..14b697b7 --- /dev/null +++ b/com.microsoft.copilot.eclipse.core.agent.linux.x64/.settings/org.eclipse.m2e.core.prefs @@ -0,0 +1,4 @@ +activeProfiles= +eclipse.preferences.version=1 +resolveWorkspaceProjects=true +version=1 diff --git a/com.microsoft.copilot.eclipse.core.agent.macosx.aarch64/.project b/com.microsoft.copilot.eclipse.core.agent.macosx.aarch64/.project new file mode 100644 index 00000000..076b9a7c --- /dev/null +++ b/com.microsoft.copilot.eclipse.core.agent.macosx.aarch64/.project @@ -0,0 +1,28 @@ + + + com.microsoft.copilot.eclipse.core.agent.macosx.aarch64 + + + + + + org.eclipse.pde.ManifestBuilder + + + + + org.eclipse.pde.SchemaBuilder + + + + + org.eclipse.m2e.core.maven2Builder + + + + + + org.eclipse.m2e.core.maven2Nature + org.eclipse.pde.PluginNature + + diff --git a/com.microsoft.copilot.eclipse.core.agent.macosx.aarch64/.settings/org.eclipse.m2e.core.prefs b/com.microsoft.copilot.eclipse.core.agent.macosx.aarch64/.settings/org.eclipse.m2e.core.prefs new file mode 100644 index 00000000..14b697b7 --- /dev/null +++ b/com.microsoft.copilot.eclipse.core.agent.macosx.aarch64/.settings/org.eclipse.m2e.core.prefs @@ -0,0 +1,4 @@ +activeProfiles= +eclipse.preferences.version=1 +resolveWorkspaceProjects=true +version=1 diff --git a/com.microsoft.copilot.eclipse.core.agent.macosx.x64/.project b/com.microsoft.copilot.eclipse.core.agent.macosx.x64/.project new file mode 100644 index 00000000..eeb7516c --- /dev/null +++ b/com.microsoft.copilot.eclipse.core.agent.macosx.x64/.project @@ -0,0 +1,28 @@ + + + com.microsoft.copilot.eclipse.core.agent.macosx.x64 + + + + + + org.eclipse.pde.ManifestBuilder + + + + + org.eclipse.pde.SchemaBuilder + + + + + org.eclipse.m2e.core.maven2Builder + + + + + + org.eclipse.m2e.core.maven2Nature + org.eclipse.pde.PluginNature + + diff --git a/com.microsoft.copilot.eclipse.core.agent.macosx.x64/.settings/org.eclipse.m2e.core.prefs b/com.microsoft.copilot.eclipse.core.agent.macosx.x64/.settings/org.eclipse.m2e.core.prefs new file mode 100644 index 00000000..14b697b7 --- /dev/null +++ b/com.microsoft.copilot.eclipse.core.agent.macosx.x64/.settings/org.eclipse.m2e.core.prefs @@ -0,0 +1,4 @@ +activeProfiles= +eclipse.preferences.version=1 +resolveWorkspaceProjects=true +version=1 diff --git a/com.microsoft.copilot.eclipse.core.agent.win32/.project b/com.microsoft.copilot.eclipse.core.agent.win32/.project new file mode 100644 index 00000000..50cac2a8 --- /dev/null +++ b/com.microsoft.copilot.eclipse.core.agent.win32/.project @@ -0,0 +1,28 @@ + + + com.microsoft.copilot.eclipse.core.agent.win32 + + + + + + org.eclipse.pde.ManifestBuilder + + + + + org.eclipse.pde.SchemaBuilder + + + + + org.eclipse.m2e.core.maven2Builder + + + + + + org.eclipse.m2e.core.maven2Nature + org.eclipse.pde.PluginNature + + diff --git a/com.microsoft.copilot.eclipse.core.agent.win32/.settings/org.eclipse.m2e.core.prefs b/com.microsoft.copilot.eclipse.core.agent.win32/.settings/org.eclipse.m2e.core.prefs new file mode 100644 index 00000000..14b697b7 --- /dev/null +++ b/com.microsoft.copilot.eclipse.core.agent.win32/.settings/org.eclipse.m2e.core.prefs @@ -0,0 +1,4 @@ +activeProfiles= +eclipse.preferences.version=1 +resolveWorkspaceProjects=true +version=1 diff --git a/com.microsoft.copilot.eclipse.feature/.project b/com.microsoft.copilot.eclipse.feature/.project new file mode 100644 index 00000000..a1bbaa35 --- /dev/null +++ b/com.microsoft.copilot.eclipse.feature/.project @@ -0,0 +1,23 @@ + + + com.microsoft.copilot.eclipse.feature + + + + + + org.eclipse.pde.FeatureBuilder + + + + + org.eclipse.m2e.core.maven2Builder + + + + + + org.eclipse.pde.FeatureNature + org.eclipse.m2e.core.maven2Nature + + diff --git a/com.microsoft.copilot.eclipse.feature/.settings/org.eclipse.m2e.core.prefs b/com.microsoft.copilot.eclipse.feature/.settings/org.eclipse.m2e.core.prefs new file mode 100644 index 00000000..14b697b7 --- /dev/null +++ b/com.microsoft.copilot.eclipse.feature/.settings/org.eclipse.m2e.core.prefs @@ -0,0 +1,4 @@ +activeProfiles= +eclipse.preferences.version=1 +resolveWorkspaceProjects=true +version=1 diff --git a/com.microsoft.copilot.eclipse.repository/.project b/com.microsoft.copilot.eclipse.repository/.project new file mode 100644 index 00000000..5a4829c3 --- /dev/null +++ b/com.microsoft.copilot.eclipse.repository/.project @@ -0,0 +1,17 @@ + + + com.microsoft.copilot.eclipse.repository + + + + + + org.eclipse.m2e.core.maven2Builder + + + + + + org.eclipse.m2e.core.maven2Nature + + diff --git a/com.microsoft.copilot.eclipse.repository/.settings/org.eclipse.m2e.core.prefs b/com.microsoft.copilot.eclipse.repository/.settings/org.eclipse.m2e.core.prefs new file mode 100644 index 00000000..14b697b7 --- /dev/null +++ b/com.microsoft.copilot.eclipse.repository/.settings/org.eclipse.m2e.core.prefs @@ -0,0 +1,4 @@ +activeProfiles= +eclipse.preferences.version=1 +resolveWorkspaceProjects=true +version=1 From 35b9932e21bf72abe7523e4614034d833493f921 Mon Sep 17 00:00:00 2001 From: Dietrich Travkin Date: Tue, 12 May 2026 12:22:26 +0200 Subject: [PATCH 3/3] chore: adapt JDT output directory to Maven build directory --- com.microsoft.copilot.eclipse.terminal.api/.classpath | 2 +- com.microsoft.copilot.eclipse.ui.jobs/.classpath | 2 +- com.microsoft.copilot.eclipse.ui.terminal.tm/.classpath | 2 +- com.microsoft.copilot.eclipse.ui.terminal/.classpath | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/com.microsoft.copilot.eclipse.terminal.api/.classpath b/com.microsoft.copilot.eclipse.terminal.api/.classpath index 81fe078c..8d861214 100644 --- a/com.microsoft.copilot.eclipse.terminal.api/.classpath +++ b/com.microsoft.copilot.eclipse.terminal.api/.classpath @@ -3,5 +3,5 @@ - + diff --git a/com.microsoft.copilot.eclipse.ui.jobs/.classpath b/com.microsoft.copilot.eclipse.ui.jobs/.classpath index a7bc7121..5508535a 100644 --- a/com.microsoft.copilot.eclipse.ui.jobs/.classpath +++ b/com.microsoft.copilot.eclipse.ui.jobs/.classpath @@ -3,5 +3,5 @@ - + diff --git a/com.microsoft.copilot.eclipse.ui.terminal.tm/.classpath b/com.microsoft.copilot.eclipse.ui.terminal.tm/.classpath index 81fe078c..8d861214 100644 --- a/com.microsoft.copilot.eclipse.ui.terminal.tm/.classpath +++ b/com.microsoft.copilot.eclipse.ui.terminal.tm/.classpath @@ -3,5 +3,5 @@ - + diff --git a/com.microsoft.copilot.eclipse.ui.terminal/.classpath b/com.microsoft.copilot.eclipse.ui.terminal/.classpath index 31b01735..e0ce1f7e 100644 --- a/com.microsoft.copilot.eclipse.ui.terminal/.classpath +++ b/com.microsoft.copilot.eclipse.ui.terminal/.classpath @@ -3,6 +3,6 @@ - +