问题标签 [maven-nar-plugin]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1544 浏览

maven - 尝试使用 maven-nar-plugin 时出错

我正在尝试使用 maven 使用 maven-nar-plugin 构建本机“C”项目。我收到以下错误:

以下是我的 pom 文件中的相关部分:

更多信息:

  1. 我正在使用 Maven 版本 3.0.5
  2. 我也看不到中央存储库maven-nar-plugin中的
  3. 我看到它可用@ http://duns.github.io/maven-snapshots/。我不知道如何告诉 maven 看这里。默认情况下,它正在查看 (2)。
0 投票
1 回答
4476 浏览

maven - 无法使用 maven-nar 插件构建 C/C++ 项目

我正在尝试使用 maven、cygwin 和 gcc 在 Windows 7 上设置一个带有空函数(.c 和 .h 文件)的简单项目。以下是有关我的环境的详细信息:

当我尝试使用 maven-nar 插件进行构建时,出现以下错误:

我已经google了,它似乎与maven找不到gcc编译器有关。

mvn命令的输出还表明 maven 正在尝试构建我的项目,msvc而该项目在我的机器上不可用。

我的路径中有gcc编译器等,我尝试遵循这个非常古老的线程中建议的一些步骤。

有谁知道如何克服这个问题?如果我在错误的论坛中,有人可以指点我正确的吗?

0 投票
1 回答
844 浏览

java - maven-nar-plugin 和依赖模块中的测试

我有两个 Maven 模块:

  1. native-wrapper - 是系统库的 JNI 包装器,由 nar-maven-plugin 构建。
  2. main-module - 依赖于 native-wrapper 并在测试期间使用它的 JNI 调用。

本机包装器中的测试工作正常。但是,在主模块中的测试期间,我得到“UnsatisfiedLinkError” - NarSystem 无法找到我的 JNI 库。

native-wrapper 的 pom 包括:

我在 ./target/ 中打开了生成的 .nar - 它确实包含“/lib/amd64-Linux-gpp/jni/libnative-wrapper-0.1.0-SNAPSHOT.so”。另一个 nar(带有 java 类)包含“/META-INF/nar/some.native.wrapper/native-wrapper/nar.properties”。

主模块的 pom:

如果我从主模块的 pom 中删除 nar-maven-plugin 插件,maven 不会从 native-wrapper 模块中找到任何类。

如何让 nar 找到库?

0 投票
2 回答
784 浏览

java - 是否可以在 Linux 下构建 JNI .dll?

我正在使用 nar-maven-plugin 3.0.0 我的 pom 类似于以下内容:

它确实有效。在我的 Linux 下,它会自动找到 gcc 并使用它来构建所有内容并将其打包到 nar 中。但是,这是 .so 文件。

我的问题是:是否可以以某种方式将其配置为在 Linux nar 下使用 .dll 在 nar 和 .so 旁边创建?并且通常生产 JNI nars,不同的架构?

如果可能,请提供一些配置片段、链接或任何可以给我一些线索的东西。

0 投票
1 回答
456 浏览

c - 使用 nar maven 插件创建 so 而不是 dylib

我现在在 Mac 上构建了 pljava。pljava 使用 maven 和 maven nar 插件进行构建。这个 maven nar 构建当前正在创建一个 dylib 而不是 .so。看起来 postgres 想要一个 .so 代替。这是打开 postgres 跟踪的输出:

所以我的问题是 - 如何让 maven nar 输出 .so 文件而不是 .dylib?如果我使用“shared”类型,则会创建一个 dylib,如果我使用“plugin”类型,则会创建一个 .bundle,如果我使用“static”类型,则链接会失败。

0 投票
1 回答
961 浏览

maven - 单独发布maven附件

我正在多个平台(Mac 和 Windows)上构建 NAR。构建很复杂,无法通过 Maven NAR 插件完成,但我自己构建 nar 文件并使用mvn命令行工具进行部署。

进行部署的典型方法是一次性完成,例如

但是,由于构建在不同的盒子上运行,发布步骤不能一次性完成。理想情况下,我希望能够在构建完成时将附件“附加”到主要工件。IE。,

运行一次:

然后在 Mac 上构建从站:

然后在 Windows 构建从站上:

当然,第一个命令工作正常。但是这两个 build slave 命令失败了

因为它认为它需要初级神器。

如何指定我要附加到出版物,而不是创建一个全新的出版物?

0 投票
1 回答
1771 浏览

c++ - 使用 Maven NAR 插件为 ARM 进行交叉编译

我正在尝试使用 Debian/Ubuntu 上的 Maven NAR 插件为 x86/amd64 和 ARM 构建 C++ 应用程序。我很难为使用 arm-linux-gnueabi-gcc 的 ARM 交叉编译构建设置正确的配置文件。

我的 pom.xml 中的配置文件片段如下所示:

使用 `mvn compile -P arm-linux-cross' 构建该配置文件不起作用:

显然这里使用的 AOL 不可用,因此 Maven 无法识别编译器/链接器。但是如何添加所需的 AOL?还是有另一种方法可以用 Maven 为 ARM 交叉编译?

0 投票
0 回答
297 浏览

java - nar-maven-plugin - 在 amd64 linux 上为 arm linux 交叉编译 JNI

我会将我的 JNI NAR 项目交叉编译到 arm linux 上。在这个链接上,我阅读了在 Jenkins 的帮助下在本机系统上编译的建议。但我只需要为 linux 和架构 arm、x86 和 AMD64 进行编译。对于这种情况,使用 Jenkis 会产生很多开销(我认为)。今天可以在带有 nar 插件的 Linux AMD64 机器上交叉编译我的案例吗?如果答案是肯定的,有人有示例 pom 吗?

此致

0 投票
1 回答
1317 浏览

c++ - Maven 无法运行程序“链接”

我正在尝试使用 maven 和 nar-maven-plugin 构建一个简单的 C++ 项目,但出现以下错误:

无法在项目 it0015-cpp-executable 上执行目标 com.github.maven-nar:nar-maven-plugin:3.2.3:nar-validate (default-nar-validate):无法启动 cmd.exe /X /C “链接/?”:执行过程时出错。无法运行程序“链接”:CreateProcess 错误=2,系统找不到指定的文件 -> [帮助 1]

我正在使用 Windows 8.1。有人对如何调查此问题有任何想法吗?

0 投票
2 回答
1551 浏览

maven - 多模块Maven项目中的Nar依赖

我建立了一个多模块 maven 项目,它由一个用于构建 nar jni 库的模块和一个依赖于该库的 jar 打包模块组成。

我能够将 nar 库安装到我的本地 maven 存储库,但我无法在依赖模块中使用它。

例如,我运行mvn nar:nar-unpack并得到:

似乎没有nar依赖,这显然不是真的。此外,尝试执行使用 jni 库的类的 main 方法失败:

项目的结构如下所示:

这是父 pom.xml:

nar-library 模块 pom.xml:

nar 依赖的 pom.xml

最后,作为证明它确实是 HelloWorld 项目的一个库类:

和客户端应用程序:

我引用了https://maven-nar.github.io/examples.html没有成功。我不知道出了什么问题。

有任何想法吗?这是带有项目的 zip