Tag: ant

如何使用Maven插件将jar部署到Raspberry Pi 2上

我有一个使用Pi4J的简单java类,它包含一个main方法。 我想构建它并将其部署到Raspberry Pi。 我在Windows 10上使用java 8,我的IDE是NetBeans 8.1。 如果项目设置为普通(非Maven)Java应用程序并设置为通过此处所示的NetBeans构建配置部署到Raspberry Pi,则项目将在jar上构建普通和FTP,然后运行它没有问题。 我想做同样但使用Maven。 问题是正在运行的代码具有C代码的原生设备,而我正在使用的Ma架构我正在使用的Maven插件似乎首先在我的本地盒子上运行jar,其中C代码将崩溃抛出exception 严重:无法使用路径加载[libpi4j.so]:[/ lib / libpi4j.so] java.lang.IllegalArgumentException:路径必须是绝对路径,但在com.pi4j.util中找到:\ lib \ libpi4j.so。 NativeLibraryLoader.loadLibraryFromClasspath(NativeLibraryLoader.java:120)at com.pi4j.util.NativeLibraryLoader.load(NativeLibraryLoader.java:92)at com.pi4j.wiringpi.Gpio。(Gpio.java:174)at com.pi4j.io. gpio.RaspiGpioProvider。(RaspiGpioProvider.java:51)com.pi4j.io.gpio.GpioFactory.getDefaultProvider(GpioFactory.java:106)at com.pi4j.io.gpio.impl.GpioControllerImpl。(GpioControllerImpl.java:54) at com.pi4j.io.gpio.GpioFactory.getInstance(GpioFactory.java:89)at com.hadronix.pi4jsample2.ControlGpioExample.main(ControlGpioExample.java:24) 线程“main”中的exceptionjava.lang.UnsatisfiedLinkError:com.pi4j.wiringpi.Gpio.wiringPiSetup()我在com.pi4j.io.gpio.RaspiGpioProvider的com.pi4j.wiringpi.Gpio.wiringPiSetup(Native Method)中。( RaspiGpioProvider.java:51)com.pi4j.io.gpio.GpioFactory.getDefaultProvider(GpioFactory.java:106)位于com.pi4j的com.pi4j.io.gpio.impl.GpioControllerImpl。(GpioControllerImpl.java:54)。 io.gpio.GpioFactory.getInstance(GpioFactory.java:89)at com.hadronix.pi4jsample2.ControlGpioExample.main(ControlGpioExample.java:24) 如果我只是做一个干净的构建,它将构建良好并创建jar。 但是,如果我选择运行构建,那么崩溃发生的地方。 这是我用来将jar部署到Pi的Maven插件。 maven-antrun-plugin ControlGpioExample.jar install run org.apache.ant ant-jsch ${ant-jsch.version} com.jcraft jsch ${jsch.version} ant-contrib ant-contrib ${ant-contrib.version} 我试图弄清楚如何更改此插件,以便不在我的本地计算机上首先执行代码。 我只是想让它假设jar是构建的,ssh到远程Pi并复制jar然后在那里运行它。 此外,如果有人在使用Maven时有更好的方法,那么我愿意接受建议。 任何帮助都会很棒! 以下是我正在使用的链接 1的链接 […]

如何连接到远程服务器并使用Ant启动/停止在该特定服务器上运行的Tomcat?

目的是: 1: connect to a remote server maybe via host: ip , port: 8181 2: stop Tomcat that’s running on that server 3: deploy a .war file 4: restart tomcat

有没有什么好工具可以查看和浏览ant构建文件?

我发现很难读取ant构建文件。 特别是如果构建文件有很多导入的文件,比如属性文件和其他xml构建文件。 因此,我想知道是否有一些好的工具可以提供帮助,例如在IDE中查看和浏览源代码。 提前致谢。 🙂

生成Ant构建文件

我有以下项目结构: root/ comp/ env/ version/ build.xml build.xml build.xml root / comp / env / version / build.xml是: Comp Env Version tasks Comp Env Version run task root / comp / env / build.xml是: Comp Env tasks Comp Env run task root / comp / build.xml是: Comp tasks 每个构建文件都会导入父构建文件,每个子项都会inheritance并覆盖父任务/属性。 我需要的是获得生成的构建XML而不运行任何东西 。 例如,如果我在root / comp / env […]

NetBeans清理和构建Android错误:Java.Lang X500Principal访问

我想知道是否有人可以帮助这个。 清理和构建最简单的项目时会发生错误。 (见下文) 导致错误的步骤: 作为一名新员工,因此在不超过4个月的机器上的新用户,我开始打开NetBeans 8.2–一周之前安装了NetBeans和Android Studio(用于sdk)。 但是没有安装Android插件,因此我实施了nbandroid更新中心来安装插件。 然后我将sdk(在users \ user.user1 \ AppData \ local \ android文件夹中找到)连接到NetBeans。 为了运行某个项目的正确Android版本(4.2.2),我首先在Android Studio / SDK Manager中安装了版本4及更高版本,然后在NetBeans中选择4.2.2。 在NetBeans中打开本地版本之前,我继续将一个android项目从共享文件服务器复制到我的本地机器。 执行清理和构建之后发生以下错误(您可能会注意到存在与上述内容不同的文件夹结构。这是由于测试了不同的配置以找到可能的解决方案): Current build type is different than previous build: forced apkbuilder run. Creating Test-debug-unaligned.apk and signing it with a debug key… C:\AndroidSDK\tools\ant\build.xml:958: The following error occurred while executing this line: C:\AndroidSDK\tools\ant\build.xml:969: The […]

Ant Tomcat 7重新加载FileNotFoundException

我正在尝试从ant重新加载Web应用程序。 但我找不到错误: D:\project\triplelands\ocbcfilesending\src\com.ocbcmcd.monitoring\build.xml:90: java.io.FileNotFoundException: http://localhost:8080/manager/reload?path=%2Fhello 我也尝试直接访问: http:// localhost:8080 / manager / reload?path = / hello我的浏览器收到404错误代码: 我的配置是: My Ant Script build.properties appserver.home=C:/appserv/apache6 #for Tomcat 5 use $appserver.home}/server/lib #for Tomcat 6 use $appserver.home}/lib appserver.lib=${appserver.home}/lib deploy.path=${appserver.home}/webapps tomcat.manager.url=http://localhost:8080/manager tomcat.manager.username=root tomcat.manager.password=root tomcat用户配置 谢谢你的建议

在eclipse中为项目生成Ant构建文件

我有一个使用eclipse编写的Java项目,我想为它生成一个Ant构建文件。 如何做呢? 我经常需要让它与源代码保持同步,以便在修改项目结构时将其与代码一起提升到公共存储库。 我很抱歉这样一个愚蠢的问题。 我浏览了论坛,但仍然没有运气。 提前致谢。

有没有办法从build.xml中指定本地jsch.jar的位置?

build.xml包含和任务,因此我将builds中的jsch.jar和其他库提供在同一目录中。 以下taskdef: 抛出错误 A class needed by class org.apache.tools.ant.taskdefs.optional.ssh.Scp cannot be found: com/jcraft/jsch/UserInfo 我无法修改标准的Ant安装(例如将jsch.jar放在ant lib目录中,或删除ant-jsch.jar),或添加命令行标志,或修改系统环境变量等:脚本必须以默认运行Ant在不同的系统上。 我实际上是在重新提出这里最初提出的问题: http : //ant.1045680.n5.nabble.com/specifying-location-of-an-external-library-within-build-xml-td1344969.html 但是无法得到关于classloader工作的答案。

在ant构建期间修改代码的最佳实践

承认,这听起来并不是最佳做法,但让我解释一下。 在构建期间,我们需要将构建号和系统版本粘贴到一个类中,该类的唯一目的是包含这些值并使它们可访问。 我们的第一个想法是使用系统属性,但由于部署环境的波动性(另一种说法是“系统管理员正在做奇怪的邪恶的令人毛骨悚然的东西”),我们希望对它们进行硬编码。 基本上我看到了在ant中实现它的4种可能性: 在类中的标记上使用 这种方法的问题是文件被更改,所以你必须在编译后用替换令牌… sooo丑陋,我不想用正则表达式来触摸源代码。 加上时间依赖。 复制文件,复制副本,编译副本,删除副本 一个人必须要记住序列 – 必须先编译原始类才能被副本覆盖。 时间依赖性也很难看。 复制文件,替换原件上的令牌,编译,用副本替换染色的原件 除非嵌入在编译目标中,否则相同的时间依赖性问 这也很难看,因为我们所有的构建文件都使用相同的导入编译目标。 在构建脚本中从头开始创建文件/将文件存储在源路径之外 由于没有时间依赖性,因此对前三个进行了改进,但编译器/ IDE非常不满意,因为它忽略了类。 红色标记令人不安地丑陋。 您对替代方案有何看法? 对此有什么最佳做法吗? 我当然希望我错过了一个完美的方法。 谢谢 编辑我们最终使用清单将构建号和系统版本存储在Implementation-Version属性中,取消了MyClass.class.getPackage().getImplementationVersion() 。 我发现这个解决方案是这个post的答案之一,由andersoj发表在评论中

使用ant停止并行java任务

我正在开发两个在独立的VM中运行的java程序,它们具有典型的服务器/客户端关系。 使用ant的并行/顺序任务我已经能够让ant运行服务器然后运行客户端。 我现在想要这样,当客户端进程停止时,ant会杀死服务器。 我已经看到这对特定服务器应用程序(如TomCat)的自定义ant任务完成,是否存在使用通用Java进程执行此操作的任何方法?