swiftlang / swiftlang/swift-java

Build tooling to wrap up a Swift library for use in Java

Open
#17 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

plugin:swiftpm
Dominant language
Swift
Stars
1.2k
Forks
123
Avg merge
1d 7h
Merged PRs (30d)
16

Description

The jextract-swift tool emits Java sources that wrap a Swift library for use in Java. We should make this use case as easy as possible, e.g., something that can integrate with a SwiftPM build (to build the Swift parts), create the corresponding Java wrappers, and integrate that into a Java build. Whether this is creating a standalone Jar file or integrating into Gradle/Maven is not yet clear.

Note that jextract-swift is very likely to need to generate some Swift glue code as well, which might itself need to be built with SwiftPM, so we'll need to account for that in the design.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the jextract-swift tool and the SwiftPM, Gradle, and Maven integration options named in the issue. First clarify how Swift and any generated Swift glue will be built, how Java wrappers will be generated, and how the result will connect to a Java build. Done means a defined, usable workflow for producing the wrapped library, whether through a standalone JAR or build-tool integration.

Written by the indexing model from the issue text.

Assessment

Tech stack
java, swift
Domain
build-system, tooling
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.