在一起使用Java和Cygwin时需要一些帮助

在一起使用Java和Cygwin时需要一些帮助,java,cygwin,tinyos,Java,Cygwin,Tinyos,我对java和cygwin都是新手。我对这两方面都没有详细的了解 我需要一些帮助 我会尝试用简单的步骤来解释我的问题 我在做tinyOS。它的开源操作系统,用于无线传感器网络。它提供了java库,用于PC与传感器之间的通信 2我通过cigwin在windows xp环境下工作 我正在开发一个应用程序。此应用程序需要一个名为串行转发器的java接口,该接口在提供的库中随时可用。以前,我通常通过输入命令**java net.tinyos.sf.SerialForwarder**手动启动此接口,然后输

我对java和cygwin都是新手。我对这两方面都没有详细的了解

我需要一些帮助

我会尝试用简单的步骤来解释我的问题

我在做tinyOS。它的开源操作系统,用于无线传感器网络。它提供了java库,用于PC与传感器之间的通信

2我通过cigwin在windows xp环境下工作

我正在开发一个应用程序。此应用程序需要一个名为串行转发器的java接口,该接口在提供的库中随时可用。以前,我通常通过输入命令**java net.tinyos.sf.SerialForwarder**手动启动此接口,然后输入使用此接口的应用程序。但现在我想让我的应用程序独立。用户需要了解这个背景cygwin命令

4所以在我的java应用程序中

Runtime.getRuntime.exec java net.tinyos.sf.SerialForwarder

5我没有给出任何错误,也没有启动接口

我走对了吗? 当我使用runtime execute命令时,如何确保通过cigwin接口调用该命令

还有。。如果我想写.bat文件。。我知道我可以发出命令,这些命令将被执行。。如何确保这些命令是通过cigwin发出的。。而不是通过cmd.exe。。
请帮忙。我。

对不起,有个坏消息。。。和Cygwin的TinyOS真的很烂。即使你真的让事情运转起来了,它也会非常缓慢和不可靠,除非Cygwin或TinyOS从我上次使用它以来做得更好。如果您需要在Windows上开发TinyOS,我强烈建议您下载+

也就是说,我会尽力帮助你。。。希望提高您的Java、Cygwin和UNIX知识

一,。明白了。 2.我也明白了。 3.

您可以编写一个Java程序,该程序使用JAR中提供的类执行您希望它执行的任何操作。如果愿意,您可以使用或其他包装器将程序包装为可执行文件。虽然这真的没有必要。如果愿意,还可以创建一个shell脚本来调用JAR

四,

明白了。是的,调用另一个可执行文件并通过管道进行通信也是一种可能性,尽管仅仅加载类并直接与它通信可能会更快

五,

它可能没有做任何事情,因为您没有给它任何命令行参数,并且它返回的对象具有允许您与进程通信的方法getInputStream和getOutputStream。。。该过程不会写入标准输出。。。它将写入管道。如果要查看进程正在写入什么,则需要从getInputStream返回的流中读取

六,


如果您使用的是Cygwin,不要使用批处理文件,而是使用不需要扩展名的BASH shell脚本,尽管它有时会显示为.sh文件扩展名。

我可能会误解或过于简化,但您只是试图从Java内部运行Java程序?为什么不只是:net.tinyos.sf.SerialForwarder.main新字符串[]{foo,bar};您已经使用Java,只需调用类的主方法

我试过这个。字符串[]args={-comm-serial@COM16:telosb};试试{net.tinyos.sf.SerialForwarder sff=new net.tinyos.sf.SerialFrowarderargs;}catch…{..}我希望这会运行。。但是我收到了这个错误信息。。事实上sf窗口弹出数毫秒,所有应用程序都因此错误而崩溃。找不到toscomm JNI库。检查tinyos tools包是否已安装,并尝试重新运行tos install jni。正在中止。您将需要调用System.loadLibrary,其中包含TinyOS的JNI库的位置-这就是它告诉您的。