Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationEventAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
2
Help us understand the problem. What are the problem?

More than 3 years have passed since last update.

sbtでJavaのライブラリを作成してGithubで簡易的に配布する

要約Play Frameworkで使われているEbeanで、SQL文をファイルから読み込むためのライブラリを作り、GitHubにゆるく公開しました。

nkmrs / ebean-query-text

※2017/1/25: Jarファイルの配布は一旦停止しました。自分でビルドしてください。

手順

プロジェクトの作成

activator newを使ったプロジェクト雛形の作成

$ activator new ebean-query-text

タイプは3) minimal-javaを選択。

libexecディレクトリとbinディレクトリは不要なのでrm -fRしておきます

依存性の追加

build.sbtにEbeanの依存関係を追加します

build.sbt
libraryDependencies += "org.avaje.ebeanorm" % "avaje-ebeanorm" % "7.6.1"

コードの作成

パッケージを切ってごりごりコードやテストを書いていきます

GitHubでの配布

配布物の依存関係からscala-langを除く

build.sbtに設定を追加します

build.sbt
crossPaths := false
autoScalaLibrary := false

publish先をレポジトリ直下のrepoディレクトリに設定

build.sbtに設定を追加します

build.sbt
publishTo := Some(Resolver.file("file",file("repo")))

publishする

$ sbt publish
$ git push

GitHub Pagesの設定

リポジトリのSettings > GitHub Pages
masterブランチをGithub Pagesに設定。

これで、リポジトリの内容が https://nkmrs.github.io/ebean-query-text/ 以下に公開されます。

呼び出し方

libraryDependenciesへの追加方法

build.sbt
resolvers += "Github Repository" at "https://nkmrs.github.io/ebean-query-text/repo/"

libraryDependencies += "com.github.nkmrs" % "ebean-query-text" % "0.1-SNAPSHOT"

Ebeanの依存性は追加したくないとき(既にある場合)

excludeする

build.sbt
resolvers += "Github Repository" at "https://nkmrs.github.io/ebean-query-text/repo/"

libraryDependencies += "com.github.nkmrs" % "ebean-query-text" % "0.1-SNAPSHOT" exclude("org.avaje.ebean", "ebean")

以上。

参考URL

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
2
Help us understand the problem. What are the problem?