我正在使用在Tomcat7上运行java Web应用程序的Raspberry Pi(B类)。我正在使用与Pi4J合作的“Jersey”java框架来控制Pi上的GPIO。最终的目的是控制继电器开关,但我不会进入。
当我尝试访问Web服务时,它会抛出一个tomcat错误(如下所示):
我使用构建工具Maven来创建Web应用程序,使得导入库变得容易。任何人都可以通过我的简单代码注意到我做错了什么来使gpio“闪烁”下面?我可以确认我的球衣设置是否正确,因为它不适用于Pi4J。
Web服务类(暂时忽略名称XMLService)
@Path("")
public class XMLService {
GPIORelay gpio = new GPIORelay();
@Path("/blinktest")
@GET
public String blinkTest(){
try{
gpio.blink();
return "successful";
}
catch(Exception e){
return "failed";
}
}
GPIORelay class
public class GPIORelay {
GpioController gpio;
GpioPinDigitalOutput pin;
String currentStatus;
public GPIORelay(){
gpio = GpioFactory.getInstance();
pin = gpio.provisionDigitalOutputPin(RaspiPin.GPIO_00, "Pin 17", PinState.LOW);
}
public void blink(){
try{
pin.high();
Thread.sleep(1000);
pin.low();
gpio.unprovisionPin(pin);
}
catch(InterruptedException e){
System.out.print("Exception ");
}
}
}
做一些初步阅读,可能是因为我需要在Raspberry pi本身上安装pi4J库,或者我需要配置java.library.path但我仍然觉得它不清楚。任何曾与Pi4J合作过的人的帮助都会很棒!
感谢。