{"id":48680730,"url":"https://github.com/eclipse-ecf/ecf","last_synced_at":"2026-04-26T20:00:44.461Z","repository":{"id":888603,"uuid":"464507811","full_name":"eclipse-ecf/ecf","owner":"eclipse-ecf","description":"ECF project repository","archived":false,"fork":false,"pushed_at":"2026-04-15T20:32:32.000Z","size":59079,"stargazers_count":13,"open_issues_count":5,"forks_count":15,"subscribers_count":6,"default_branch":"master","last_synced_at":"2026-04-15T22:25:31.317Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/eclipse-ecf.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2022-02-28T14:09:30.000Z","updated_at":"2026-04-15T20:32:37.000Z","dependencies_parsed_at":"2025-09-14T05:42:39.770Z","dependency_job_id":null,"html_url":"https://github.com/eclipse-ecf/ecf","commit_stats":null,"previous_names":["eclipse-ecf/ecf","eclipse/ecf"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/eclipse-ecf/ecf","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eclipse-ecf%2Fecf","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eclipse-ecf%2Fecf/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eclipse-ecf%2Fecf/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eclipse-ecf%2Fecf/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/eclipse-ecf","download_url":"https://codeload.github.com/eclipse-ecf/ecf/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/eclipse-ecf%2Fecf/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32310804,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-04-26T19:15:34.056Z","status":"ssl_error","status_checked_at":"2026-04-26T19:15:15.467Z","response_time":129,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2026-04-11T01:00:36.059Z","updated_at":"2026-04-26T20:00:44.452Z","avatar_url":"https://github.com/eclipse-ecf.png","language":"Java","funding_links":[],"categories":["进程间通信"],"sub_categories":["Spring Cloud框架"],"readme":"## Eclipse Communication Framework\nECF is a set of modular frameworks to support inter-process communication\n\nCurrent version: [3.16.8](https://download.eclipse.org/rt/ecf/3.16.8/)\nRelease Date: 4/15/2026\n\n## ECF Github Organization\n\nThe [ECF Organization](https://github.com/ECF) has a number of discovery and remote services providers for ECF's implementation of [OSGi Remote Services](https://docs.osgi.org/specification/osgi.cmpn/8.0.0/service.remoteservices.html) and [OSGi Remote Service Admin](https://docs.osgi.org/specification/osgi.cmpn/8.0.0/service.remoteserviceadmin.html) specifications.\n\n## NEW (8/19/2025) ECF enhances tooling support for Model Context Protocol (MCP)\n\nAs part of ECF 3.16.5, there is a new bundle/jar in ECF that adds unix domain sockets (uds) transport support for MCP.  It's available in [ECF 3.16.5 p2 repo](https://download.eclipse.org/rt/ecf/3.16.5/).\n\n## NEW (4/28/2025) Bndtools Template for Python.Java Remote Services Development\n\nThere has been a new project template added to the [ECF Bndtools Workspace Template](https://github.com/ECF/bndtools.workspace) that uses the [ECF Python.Java Distribution Provider](https://github.com/ECF/Py4j-RemoteServicesProvider).  This distribution provider is based upon py4j, which supports high performance remote procedure call between python and java processes.\n\nTo try it out after installing Bndtools 7.1 and the ECF tools add ons\n\n1. Create a new Bndtools Workspace using the [ECF Bndtools Workspace Template](https://github.com/ECF/bndtools.workspace)\n\n![bndtoolsnewwkspace](https://github.com/user-attachments/assets/95ec5792-6bc2-4c88-990d-4e8d3350627e)\n\n2. Create a new Bnd OSGi project\n\n![bndtoolsnewproject](https://github.com/user-attachments/assets/fa2641e6-a074-4796-b761-f79999b9ba06)\n\n3. Open the projectName.hellopython.javahost.bndrun file in the project directory\n   \n![bndtoolsbndrun](https://github.com/user-attachments/assets/9bf8a380-9ee7-4e48-ac49-1627cf3ace75)\n\n4. Choose 'Resolve' and then 'Update'\n\n5. Select Debug OSGi to start the example application (Java)\n\n![bndtoolsdebug](https://github.com/user-attachments/assets/9fa2536f-9748-4f5f-94bc-b78374f436a8)\n\nRunning Python Example Program \n\n1. Install [iPOPO v 3.1.0](https://ipopo.readthedocs.io) in your Python (3.9 or greater) local environment\n\n2. In a command shell or IDE, navigate to the project directory and run the run_python_example.py script\n\n```\npython run_python_example.py\n```\nThe examples will output progress to their respective consoles as the remote services are made exported,\ndiscovered, and imported by the java process or the python process.  \n\n![bndtoolspython](https://github.com/user-attachments/assets/d5bbd4e4-d57c-412a-a198-fe16ed76a95d)\n\nMost of the code that produces output is available in the example project. For java: src/main/java/.../hello/*.java \nand python: python-src/samples/rsa\n   \n### Install into Bndtools for Remote Services development\nNEW: Feature for Remote Services tooling that enhances [Bndtools](https://bndtools.org/) 7.1 or higher.  Theses tools use bndtools project, workspace, service templates, and OSGi services wizards for simplifying the creation of OSGi remote services.  Also present are Eclipse view for debugging remote service endpoint description discovery and remote service export/import.  The feature requires that Bndtools 7.1+ be [installed](https://bndtools.org/installation.html) into a recent version of Eclipse.  Also see the Install into Bndtools 7.1 via Oomph section below for automated install.\n\n\u003cb\u003eName\u003c/b\u003e:  ECF 3.15.7\n\n\u003cb\u003eUpdate Site URL\u003c/b\u003e:  [https://download.eclipse.org/rt/ecf/latest/site.p2](https://download.eclipse.org/rt/ecf/latest/site.p2)\n\n[Javadocs](https://download.eclipse.org/rt/ecf/latest/javadoc/)\n\n### Install into [Bndtools 7.1](https://bndtools.org/) via Oomph\n\nThere are now [Oomph](https://projects.eclipse.org/projects/tools.oomph) Setups that will automatically install and configure Eclipse, Bndtools 7.1 and ECF 3.15.7 [see here](https://github.com/bndtools/bndtools.p2.repo/tree/master/setup/ecf)\n\n### Features for Bndtools-based [OSGi Remote Services](https://docs.osgi.org/specification/osgi.cmpn/7.0.0/service.remoteservices.html) Development\n\n#### Workspace, Project, and Bndrun Templates\n\nBndtools Workspace Template for Remote Services Development here:  [https://github.com/ECF/bndtools.workspace](https://github.com/ECF/bndtools.workspace).  This workspace template contains multiple project templates for creating Remote Service API, Impl, and Consumer projects via the New-\u003eBnd OSGi Project wizard:\n\n![image](https://github.com/user-attachments/assets/1c775de3-4970-4202-865f-1ac3ba0b0f32)\n\n#### Wizards for creating api, impl, consumer Remote Services projects via a single wizard\n\n![image](https://github.com/user-attachments/assets/674fb4ba-8f67-42fb-8664-341d45fce17a)\n\n#### Eclipse Views for Endpoint Discovery and [Remote Service Admin Manager](https://docs.osgi.org/specification/osgi.cmpn/8.0.0/service.remoteserviceadmin.html)\n\n![image](https://github.com/user-attachments/assets/acd0e785-06db-4136-9b97-9a0ea944a062)\n\n#### Wizard and Template-Created Bndrun files, to immediately run/debug wizard-generated remote services\n\n![image](https://github.com/user-attachments/assets/97f85c7f-78e6-4016-ac8c-bbe014bd9446)\n\n### Download/Install into [Apache Karaf 4.4+](https://karaf.apache.org/)\n\nFor Install into Karaf runtime, [here is a top-level Karaf Features file](https://download.eclipse.org/rt/ecf/latest/karaf-features.xml)\n\n## Key ECF APIs\n\n### OSGi Remote Services\nECF provides a fully-compliant and multi-provider implementation of the [OSGi Remote Services](https://docs.osgi.org/specification/osgi.cmpn/8.0.0/service.remoteservices.html) and [Remote Services Admin/RSA](https://docs.osgi.org/specification/osgi.cmpn/8.0.0/service.remoteserviceadmin.html).  A number of providers are available in this repo, but there are also many providers available at the [ECF github organization](https://github.com/ECF).\n\nECF is the OSGi R8 RS/RSA implementation in the [OSGi Test Compatibilty Kit (TCK)](https://github.com/osgi/osgi)\n\n### Eclipse Install/Update File Transfer\nECF filetransfer is used by the [Eclipse IDE](https://github.com/eclipse-platform)\n\n## ECF Github Organization\nECF  has an [organization with a number of other repos](https://github.com/ECF) containing Remote Services distribution and discovery providers (e.g. grpc, etcd discovery, hazelcast, JMS, JGroups, xmlrpc-based distribution providers, examples, others). Most of these repos provide distribution or discovery providers that depend upon the core remote services/RSA implementation provided by this repo.  \n\n## Wiki\nSee the [ECF Wiki](https://wiki.eclipse.org/Eclipse_Communication_Framework_Project) for examples, tutorials, Karaf install documentation, other documentation.\n\nTo contribute or find out what's going on right now, please join the [ecf-dev mailing list](https://accounts.eclipse.org/mailing-list/ecf-dev) or contact project lead Scott Lewis at github email: scottslewis at gmail.com\n\n## Services, Training,  and Support\nFor Remote Services training, support, or custom OSGi or Eclipse development please contact scottslewis at gmail.com via email or post on the [ecf-dev mailing list](https://accounts.eclipse.org/mailing-list/ecf-dev)  \n\n### Contributing to ECF\nContributions are always welcome!  For 20 years ECF has been innovating via community contributions.\nSee [CONTRIBUTING.md](CONTRIBUTING.md)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feclipse-ecf%2Fecf","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Feclipse-ecf%2Fecf","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feclipse-ecf%2Fecf/lists"}