Since upgrading from Xcode 15 to 16, we have been experiencing a build error during compilation. Building on Xcode 15 still works with no issues. The error happens only on the first build after a clean. Subsequent builds succeed. This is an issue because our CI process archives the project from a clean slate, and this causes it to fail every time. I will attempt to describe the issue and include information I believe is relevant in this document.
The error occurs on this import line within an Objective-C file during the Scan Dependencies step of compiling. This line imports our custom Objective-C to Swift bridging header file - "Swift2Objc.h".
Our custom Objective-C to Swift bridging header file is simply wrapping the project’s auto-generated Objective-C to Swift bridging header file - "KWISwift.h".
The error is specific to the import of the OfflineServices Swift Package.
Specifically, the OfflineServices-Swift.h file - the Swift Package’s auto-generated Objective-C to Swift bridging file.
Module JRE not found - the exact error (Also included as text on the bottom of the post)
JRE is a third-party library provided to us as an xcframework. It is placed directly into our Swift Package as a binary target.
The xcframework itself is composed of .a file and a Headers folder which includes header files and a module.modulemap.
The module.modulemap file looks like this.
Selecting any option will automatically load the page
Post
Replies
Boosts
Views
Activity
I have 2 Swift Package dependencies which both have a XCFramework binary target. Both xcframeworks have:
.a file
Headers folder with .h files and a module.modulemap file.
When I add these packages to my project I get the error:
Multiple commands produce '/Users/../Library/Developer/Xcode/DerivedData/../Build/Products/Debug-iphonesimulator/include/module.modulemap'
Command: ProcessXCFramework /Users/omran/Library/Developer/Xcode/DerivedData/../SourcePackages/checkouts/zebrabarcodescanner/Sources/ZebraScannerSDK.xcframework /Users/omran/Library/Developer/Xcode/DerivedData/../Build/Products/Debug-iphonesimulator/libsymbolbt-sdk.a ios simulator
Command: ProcessXCFramework /Users/omran/Library/Developer/Xcode/DerivedData/../SourcePackages/checkouts/verifonesdk/Sources/VMF.xcframework /Users/omran/Library/Developer/Xcode/DerivedData/../Build/Products/Debug-iphonesimulator/VMF.a ios simulator
Seems like Xcode is trying to write both modulemaps to the same location... Is this a bug?