我希望使用Maven将JNI库(包括其共享对象(.so)文件)添加到我的项目中。 不幸的是它还没有在公共存储库中,所以我想我必须自己在我的本地存储库上安装它才能使它工作。 如何将Maven中的本机部分包含在我的项目中(最终使用copy-dependencies插件导出)。 这是一个标准的J2SE应用程序(不是网络应用程序),包装.jar? 我试图添加的库是junixsocket ,以防它有助于了解。 它有一个.so(本机库)组件和Java .jar组件。 我遇到了maven-nar-plugin ,似乎是针对原生版本,但似乎更倾向于从代码构建JNI项目,而不是捆绑第三方JNI库,我无法将拼图拼凑在一起。 我该怎么做: 在我的本地存储库中安装这些,具有.jar取决于.so库。 在POM文件中包含依赖项(在.jar和.so上)。 谢谢。
我想使用maven enforcer插件检查我的路径上是否有重复的类。 我从这里试过这个例子。 但当我这样运行时: mvn enforcer:enforce 我明白了: 无法在项目datapopulator上执行目标org.apache.maven.plugins:maven-enforcer-plugin:1.0.1:enforce(default-cli):目标org.apache.maven.plugins的参数’rules’:maven-enforcer -plugin:1.0.1:强制执行缺失或无效 有没有办法正确使用它? 编辑#1 如果将我的配置更改为: org.apache.maven.plugins maven-enforcer-plugin 1.0.1 enforce-versions enforce true 产生相同的错误。
每当我们在Maven中执行我们的site目标时,我们会在控制台日志中获得一长串与依赖项相关的错误。 这些错误似乎是在构建的依赖关系报告创建过程中生成的。 在针对http://maven.glassfish.org/content/groups/glassfish存储库检查资源时,似乎会生成所有错误。 (那里也有一个奇怪的JavaFX错误,但我们暂时不担心) 构建确实成功完成。 10:21:52 [INFO] Generating “Dependencies” report — maven-project-info-reports-plugin:2.7:dependencies 10:22:07 [ERROR] Artifact: com.oracle:javafx:jar:2.2.25 has no file. 10:22:09 [WARNING] The repository url ‘http://repository.springsource.com/maven/bundles/external’ is invalid – Repository ‘spring-external’ will be blacklisted. 10:22:10 [WARNING] The repository url ‘http://download.oracle.com/maven’ is invalid – Repository ‘oracleReleases’ will be blacklisted. 10:22:12 [ERROR] Unable to determine if resource com.fasterxml.jackson.core:jackson-databind:jar:2.4.1.3:compile […]
我检查了SVN中现有的项目源代码到我系统中的文件夹。 然后我打开了日食。 导入项目 – >现有Maven项目。 它没有问题导入。 但是,Project Explorer将其显示为文件夹而不是包。 (就像我们创建一个包然后向它添加类时,它会为包根显示不同的图标)。 我也打开了Navigator和Package Explorer。 但他们也将它们显示为文件夹。 我试过了: mvn eclipse:clean mvn eclipse:eclipse 在项目的根目录上。 但它没有帮助。 任何人都可以帮忙吗? 我的文件夹结构: ecs-> ecs-ejb-> src/java/main/com/xxx pom.xml ecs->ear-> src/java/main/com/xxx pom.xml pom.xml
我在IntelliJ中创建了一个新的maven项目,并将包装设置为jar,但是当我构建它时,目标文件夹不包含jar。 我确信我的东西真的很蠢,但我在不同的网站上阅读的东西太多了,我觉得更好。
我创建了一个Web应用程序,我需要它才能与图形数据库进行交互(我正在使用Titan)。 添加Titan的依赖项时,当我尝试在Tomcat中部署此WAR时,会出现以下错误: SEVERE: A child container failed during start java.util.concurrent.ExecutionException: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Tomcat].StandardHost[localhost].StandardContext[]] at java.util.concurrent.FutureTask.report(FutureTask.java:122) at java.util.concurrent.FutureTask.get(FutureTask.java:188) at org.apache.catalina.core.ContainerBase.startInternal(ContainerBase.java:1123) at org.apache.catalina.core.StandardHost.startInternal(StandardHost.java:800) at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1559) at org.apache.catalina.core.ContainerBase$StartChild.call(ContainerBase.java:1549) at java.util.concurrent.FutureTask.run(FutureTask.java:262) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) at java.lang.Thread.run(Thread.java:744) Caused by: org.apache.catalina.LifecycleException: Failed to start component [StandardEngine[Tomcat].StandardHost[localhost].StandardContext[]] at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154) … 6 more Caused by: java.lang.LinkageError: loader […]
我有Ant的经验,如何开始使用maven。 与ant相比的任何优势?
我有一个基于spring的应用程序,它执行组件/包扫描,查找特定命名空间内的包。 该应用程序在Eclipse中运行完美,我想创建一个可执行的JAR来部署到我们的各种环境。 我已经尝试了各种方法来使其工作,但唯一有效的是如果我将依赖项包含在JAR之外的文件夹中。 这是我到目前为止所尝试的 – Maven从这里 编译到一个jar ,使用这种方法创建单个JAR,并将依赖项作为类包含在内。 使用时运行JAR – “java -jar jarName.jar” 我得到一个错误说明 – “错误:配置问题:无法找到XML架构命名空间的Spring NamespaceHandler http://www.springframework.org/schema/context] ” 使用 Eclipse中的Export’As Runnable JAR file’ ,并在Library Handling部分选择‘Extracted required libraries to generated JAR’ 。 这也构建了一个jar,其依赖关系作为其中的类。 运行jar时,我得到相同的“错误:配置问题:无法找到XML架构命名空间的Spring NamespaceHandler [ http://www.springframework.org/schema/context] ” 使用 Eclipse中的Export’As Runnable JAR file’ ,并在Library Handling部分选择‘将所需的库打包到生成的JAR’ 。 这构建了一个jar,其中的依赖关系作为JAR(而不是类)。 当我运行这个JAR时,我收到以下错误 – “无法在URL [rsrc:com / company /]下搜索匹配的文件,因为它与文件系统java.io.FileNotFoundException中的目录不对应:URL [rsrc:com […]
我创建了一个基于Maven2的GWT应用程序,将其导入Eclipse,当我调试为GWT Web应用程序时,Eclipse调试会话暂停FileNotFoundException。 它显示一个窗口:源附件不包含文件URLClassPath.class的源。 我已经彻底清除了Eclipse工作区(和.metadata子目录),创建/导入了一个空白项目,同样的事情发生了。 如果我运行作为 GWT Web应用程序,它工作正常(有几个警告)。 我需要调整什么来使其在调试模式下工作? 重现问题的步骤 1)创建应用程序 webAppCreator -noant -maven -XnoEclipse -out MyApp com.example.MyApp 2)导入和更改设置 将应用程序导入Eclipse工作区,在“使用Google Web Toolkit”复选框的设置中勾选。 “选中此项目有一个WAR目录”。 WAR目录设置为src / main / webapp。 未选中“从此目录启动和部署”。 3)调试为 现在按下调试工具栏按钮,选择“GWT Web Application”,然后选择target / www作为WAR目录。 你应该看到同样的问题。 “调试”窗格中的调用堆栈包含以下内容: MyApp.html [Web应用程序] localhost上的com.google.gwt.dev.DevMode:51620线程[main](已挂起(exceptionFileNotFoundException)) URLClassPath $ JarLoader.getJarFile(URL)行:644 URLClassPath $ JarLoader.access $ 600(URLClassPath $ JarLoader,URL)行:540 URLClassPath $ JarLoader $ 1.run()行:607 AccessController.doPrivileged(PrivilegedExceptionAction)行:不可用[native […]
在将MacBook Pro更新到MacOs Sierra之前,命令: mvn clean install -U 运行大约40秒,在几个maven子模块中进行了数百次测试。 更新到MacOS Sierra后,没有更改代码,相同的命令需要12分钟。 在我看来,当Surefire插件打印当前模块的结果时,它会在继续之前挂起2-3分钟。 到目前为止,测试执行的速度与更新MacOS Sierra之前的速度一样快。 从模块开始打印的TestNG结果示例: Tests run: 101, Failures: 0, Errors: 0, Skipped: 0, Time elapsed: 167.854 sec Results : Tests run: 101, Failures: 0, Errors: 0, Skipped: 0 有谁知道这背后的原因?