Building a package for Apple platform shouldn't use JExtractSwiftPlugin plugin and swift-java dependency at all
Mantenedores costumam responder em até 1 dia
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 3/5
- Tempo estimado
- 1-2 dias
- Facilidade para iniciantes
- 48/100
- Tipo de issue
- Funcionalidade
- Clareza
- Razoavelmente clara
- Status de atividade
- Pouca atividade
- Stack de tecnologia
- swift
- Domínio
- build-system
Direção de pesquisa
Comece pelo manifesto Package.swift e pelo script Gradle descritos na issue. Revise como o pacote Swift está configurado para builds Apple e Android e, em seguida, verifique se os builds Apple não adicionam a dependência SwiftJava nem o JExtractSwiftPlugin, enquanto os builds Android mantêm a integração necessária.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
As per discussion with @ktoso on Slack:
When using a shared Swift package between Android and iOS, macOS etc…, we can't have the JExtractSwiftPlugin be used, and we don't want the swift-java dependency at all even.
The current workaround is to use an ENV variable inside the Package.swift manifest which only adds the dependency and plugin to the target if built for Android (The environment variable needs to be set in the gradle script in that case)
import Foundation.NSProcessInfo
let isSwiftJavaBuild = ProcessInfo.processInfo.environment["SWIFT_JAVA_BUILD"] != nil
if isSwiftJavaBuild {
package.targets.first?.dependencies.append(.product(name: "SwiftJava", package: "swift-java"))
package.targets.first?.plugins?.append(.plugin(name: "JExtractSwiftPlugin", package: "swift-java"))
}
- Linguagem predominante
- Swift
- Estrelas
- 1.3k
- Forks
- 129
- Merge médio
- 7h 16min
- PRs com merge (30d)
- 4
Preparar o ambiente
- Sem Dockerfile nem arquivo Docker Compose
- Sem modelo de pull request
- Ler o guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de swiftlang/swift-java
-
wrap-java: Optional convenience methods can fail to compile when a parameter shadows the method nameAberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 70/100
swiftlang/swift-java#945 ·
Mantenedores costumam responder em até 1 dia
-
android
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 75/100
swiftlang/swift-java#663 · 4 comentários · 1 reação ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 3/5 1-2 dias Facilidade para iniciantes 56/100
swiftlang/swift-java#949 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 5/5 Mais de uma semana Facilidade para iniciantes 35/100
swiftlang/swift-java#948 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 4/5 3-5 dias Facilidade para iniciantes 54/100
swiftlang/swift-java#947 ·
Mantenedores costumam responder em até 1 dia
Todas as issues de swiftlang/swift-java
Issues semelhantes
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 83/100
OneBusAway/vehicle-positions#260 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 85/100
eliasstravik/herdr-projects#789 · 1 comentário ·
-
follow-up needs-triage S3: minor
Dificuldade 1/5 1-3 horas Facilidade para iniciantes 85/100
manaflow-ai/cmux#38032 · 1 comentário ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 67/100
arkavo-org/ArkavoKit#70 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 60/100
Mantenedores costumam responder em até 1 dia