JNIと同様にMavenのプロジェクト構成を採用します。JNAでは C/C++ のソースビルドを先行させます。
以下のプロジェクトツリーでは、「jna」フォルダを作製、ソースコードを配置します。
ビルドしたライブラリは、「targe/classes」フォルダに再配置します。
JNAプロジェクト.
HelloJNA
├── jna
│ ├── HelloJNA.c
│ ├── HelloJNA.o
│ └── makefile
├── pom.xml
├── src
│ └── main
│ └── java
│ └── com
│ └── book
│ └── jocl
│ └── HelloJNA.java
└── target
├── HelloJNA-0.0.1-SNAPSHOT.jar
├── classes
│ ├── HelloJNA.c
│ ├── com
│ │ └── book
│ │ └── jocl
│ │ ├── HelloJNA.class
│ │ ├── HelloLib$1.class
│ │ └── HelloLib.class
│ ├── libhello.dylib
│ └── makefile
└── maven-archiver
└── pom.properties
おそらくMacユーザーの内のかなり多くの割合でHomeBrewをインストールされているかと思います。
下記は筆者の予備端末にHomeBrewでMavenパッケージをインストールした場合のバージョン情報です。
$ mvn -version Apache Maven 3.3.3 (7994120775791599e205a5524ec3e0dfe41d4a06; 2015-04-22T20:57:37+09:00) Maven home: /usr/local/Cellar/maven/3.3.3/libexec Java version: 1.8.0_45, vendor: Oracle Corporation Java home: /Library/Java/JavaVirtualMachines/jdk1.8.0_45.jdk/Contents/Home/jre Default locale: ja_JP, platform encoding: UTF-8 OS name: "mac os x", version: "10.9.5", arch: "x86_64", family: "mac" $ brew search maven homebrew/versions/maven2 homebrew/versions/maven31 maven ✔ homebrew/versions/maven30 homebrew/versions/maven32 maven-shell Caskroom/versions/maven-completion
注目頂きたい点としては、標準パッケージインストールの場合、「mvn2」ではなく「mvn」でパスが通されていることです。
バージョンについては 2 でも 3 でも構いません。
Copyright 2018-2019, by Masaki Komatsu