-
Notifications
You must be signed in to change notification settings - Fork 13
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Create platform-dependent artifact #14
Create platform-dependent artifact #14
Conversation
See here for an example of the new artifact name with discriminating information for consumers. |
5d7bb82
to
3cc0591
Compare
I think this is OK now @levyfan. Do you have any thoughts? The way to add this project as dependency now is, for example: <dependencies>
<dependency>
<groupId>com.github.levyfan</groupId>
<artifactId>sentencepiece</artifactId>
<version>0.0.1-SNAPSHOT</version>
<classifier>osx-x86_64</classifier>
</dependency>
</dependencies> which can be automated with the os-maven-plugin transparently assuming the plugin is included in the POM: <dependencies>
<dependency>
<groupId>com.github.levyfan</groupId>
<artifactId>sentencepiece</artifactId>
<version>0.0.1-SNAPSHOT</version>
<classifier>${os.detected.classifier}</classifier>
</dependency>
</dependencies> |
* add CI. * use checkout action to clone repo. * migrate to SBT build because gradle cannot handle classifiers. * remove settings gradle file. * update README to reflect sbt refactor. * fix issue where published JAR only contains javadocs. * add erip fork of sentencepiece while waiting for levyfan/sentencepiece-jni#14 * fix CI to use different JDKs in artifact build. * update java opts so CI does not run out of memory. * update temporarily required dep.
I suppose we could further merge pom.xml and pom-windows.xml together by maven profile https://stackoverflow.com/questions/38465711/choose-maven-profile-from-os-family |
Consumers of sentencepiece-jni need to depend on an artifact that is compatible with their desired platform. This PR seeks to add a discriminating
classifier
to the build which allows a user to specify which platform they're targetting a la os-maven-plugin. This has implications on current users as they will need to explicitly add the platform they were targeting before a cross-platform build was enabled (i.e.,linux-x86_64
).