我一直致力于一个Java软件项目,该项目将部署到各种硬件设备(例如,raspberry pi,android手机).
在将该项目作为产品发布之前,我想通过明确说明用户运行我们的软件产品所必需的最低要求(内存和CPU)或硬件设备来引导用户.
我该怎么测量它们?什么是Java可用的工具?
在我当前的项目中,我编写了高级规范(如下所示以供参考),并使用在ANTLR中编写的语法解析它,然后使用StringTempate生成等效的Java编程代码.现在,我的客户发现编写这个文本高级规范很困难,并希望我提供等效的可视化拖放编程构造和编辑器来指定这种编程结构.我的问题是:eclipse是否提供任何拖放工作台来开发可视化编程构造和编辑器? 它可能很容易与ANTLR集成.
示例示例或其链接将非常有用.
TemperatureSensor
generate tempMeasurement : TempStruct;
TempStruct
tempValue : double;
unitOfMeasurement: String;
Run Code Online (Sandbox Code Playgroud) 在我目前的工作中,我希望为我的域特定语言的程序员提供xText编辑器支持(因为它的代码完成,语法高亮).我在xText中编写了语法.
为了提供xText编辑器支持,我将为程序员提供安装了xText插件的完整eclipse IDE(可在xText网站上获得).但是,我得到xText编辑器工具,代价是以下手动手动步骤(如5分钟xText教程中所述).
我的问题是,有什么方法可以一次点击这些任务(任何脚本或任何其他东西)来雾化(以最小的努力)?
在我当前的项目中,我们尝试使用Node-RED实现当前的应用程序功能.功能如下所示.这里,Fire状态接收两个输入:(1)TemperatureSensor
(2)SmokeDetector
.两个传感器都使用MQTT发布者发布数据.和Firestate
组件可以通过MQTT子网接收数据.
火灾状态可以基于这两个参数产生输出if temperaturevalue > 70 and Smokevalue == true
.鉴于此,我的问题是 - Node-RED是否支持两种输入功能?如果是,那么我们如何实现这一功能呢?如果没有,那么..我可以说使用Node-RED无法实现两个输入功能吗?我们已经看到Node-RED提供多个输出,但不提供输入.
我正在尝试从 REST 客户端访问 WCF 服务。我正在从 REST 客户端向 WCF 服务发送 POST 请求。供您参考,详情如下。
该服务合同的定义如下:
[ServiceContract]
public interface IBZTsoftsensor_WcfService {
[OperationContract]
[WebInvoke(Method = "POST", RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Wrapped, UriTemplate = "/data")]
string ExecuteModelJson(string inputModel);
}
Run Code Online (Sandbox Code Playgroud)
而这个接口的实现如下:
public string ExecuteModelJson(string inputModel){
try
{
BZTsoftsensor_ModelInput input = JsonConvert.DeserializeObject<BZTsoftsensor_ModelInput>(inputModel);
var results = this.ExecuteModel(input);
return JsonConvert.SerializeObject(results);
}
catch (Exception ex)
{
return ex.Message;
}
}
Run Code Online (Sandbox Code Playgroud)
从 REST 客户端,我请求此 WCF 服务如下:
作为扩展,我必须从 NiFi 处理器访问此 WCF 服务。您能否告诉我如何在 Nifi 中配置处理器以访问此 WCF 服务? …
我正在为Android移动设备开发可扩展的传感和数据处理框架.它将支持通过Android移动设备访问的各种数据信号(例如,温度,电池,压力,wifi信号强度等).
为了测试传感器,我在Android设备上部署了我编写的Android代码.在这里,限制来了 - 我的Android设备有一组有限的传感器(例如,它没有温度传感器)所以,我无法测试所有类型传感器的所有编写代码(例如,温度,压力,等等.).
在Internet上,我检查了SensorSimulator项目(),但它对我不起作用.我收到以下错误.
05-03 01:40:40.766: E/AndroidRuntime(10139): FATAL EXCEPTION: main
05-03 01:40:40.766: E/AndroidRuntime(10139): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.example.helloworldsensorsimulator/com.example.helloworldsensorsimulator.MainActivity}: android.os.NetworkOnMainThreadException
05-03 01:40:40.766: E/AndroidRuntime(10139): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2121)
05-03 01:40:40.766: E/AndroidRuntime(10139): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2146)
05-03 01:40:40.766: E/AndroidRuntime(10139): at android.app.ActivityThread.access$700(ActivityThread.java:140)
05-03 01:40:40.766: E/AndroidRuntime(10139): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1238)
05-03 01:40:40.766: E/AndroidRuntime(10139): at android.os.Handler.dispatchMessage(Handler.java:99)
05-03 01:40:40.766: E/AndroidRuntime(10139): at android.os.Looper.loop(Looper.java:177)
05-03 01:40:40.766: E/AndroidRuntime(10139): at android.app.ActivityThread.main(ActivityThread.java:4947)
05-03 01:40:40.766: E/AndroidRuntime(10139): at java.lang.reflect.Method.invokeNative(Native Method)
05-03 01:40:40.766: E/AndroidRuntime(10139): at java.lang.reflect.Method.invoke(Method.java:511)
05-03 01:40:40.766: E/AndroidRuntime(10139): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1038)
05-03 01:40:40.766: E/AndroidRuntime(10139): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:805)
05-03 …
Run Code Online (Sandbox Code Playgroud) 在我目前的项目中,我一直在使用apache nifi进行一些实验.当我第一次配置时.nifi运行得很完美(当我输入时,我能够在Google Chrome上看到画布,工具栏http://localhost:8080/nifi/
).但是,重新启动计算机一次后,我无法运行它.
当我键入nifi.0.7.0\bin\run-nifi.bat
命令时,我在控制台上看到以下消息.
2016-07-27 10:19:39,246 INFO [main] org.apache.nifi.bootstrap.Command Starting A
pache NiFi...
2016-07-27 10:19:39,246 INFO [main] org.apache.nifi.bootstrap.Command Working Di
rectory: C:\NIFI-0~1.0
2016-07-27 10:19:39,246 INFO [main] org.apache.nifi.bootstrap.Command Command: C
:\Program Files\Java\jdk1.8.0_102\bin\java.exe -classpath C:\NIFI-0~1.0\.\conf;C
:\NIFI-0~1.0\.\lib\jcl-over-slf4j-1.7.12.jar;C:\NIFI-0~1.0\.\lib\jul-to-slf4j-1.
7.12.jar;C:\NIFI-0~1.0\.\lib\log4j-over-slf4j-1.7.12.jar;C:\NIFI-0~1.0\.\lib\log
back-classic-1.1.3.jar;C:\NIFI-0~1.0\.\lib\logback-core-1.1.3.jar;C:\NIFI-0~1.0\
.\lib\nifi-api-0.7.0.jar;C:\NIFI-0~1.0\.\lib\nifi-documentation-0.7.0.jar;C:\NIF
I-0~1.0\.\lib\nifi-nar-utils-0.7.0.jar;C:\NIFI-0~1.0\.\lib\nifi-properties-0.7.0
.jar;C:\NIFI-0~1.0\.\lib\nifi-runtime-0.7.0.jar;C:\NIFI-0~1.0\.\lib\slf4j-api-1.
7.12.jar -Dorg.apache.jasper.compiler.disablejsr199=true -Xmx512m -Xms512m -Dsun
.net.http.allowRestrictedHeaders=true -Djava.net.preferIPv4Stack=true -Djava.awt
.headless=true -Djava.protocol.handler.pkgs=sun.net.www.protocol -Dnifi.properti
es.file.path=C:\NIFI-0~1.0\.\conf\nifi.properties -Dnifi.bootstrap.listen.port=4
9823 -Dapp=NiFi -Dorg.apache.nifi.bootstrap.config.log.dir=C:\NIFI-0~1.0\bin\..\
\logs org.apache.nifi.NiFi
Run Code Online (Sandbox Code Playgroud)
你能告诉我什么问题吗?我该如何解决这个问题?
更多信息,内容nifi-app.log
如下:
2016-07-31 17:47:52,531 INFO [main] org.apache.nifi.NiFi Launching NiFi...
2016-07-31 17:47:52,687 INFO [main] org.apache.nifi.BootstrapListener Started Bootstrap Listener, …
Run Code Online (Sandbox Code Playgroud) 我一直在尝试设置一个 CI 管道Github Actions
到docker-hub
.
我已编写以下.yml
文件部分并在作业步骤.github\workflow
中收到如下所示的错误。Build and Push
我试图在互联网上找到它,但我无法找到它。
name: Build and Deploy Code
on: [push, pull_request]
jobs:
job1:
# This will tell the job to run on ubuntu machine
runs-on: ubuntu-latest
env:
DB_USER: postgres
DB_PASSWORD: root123
DB_HOST: postgres
DB_PORT: 5432
DATABASE: postgres
SECRET_KEY: 09d25e094faa6ca2556c818166b7a9563b93f7099f6f0f4caa6cf63b88e8d3e7
ALGORITHM: HS256
ACCESS_TOKEN_EXPIRE_DAYS: 300
REDIS_HOST: redis
REDIS_PORT: 6379
services:
postgres:
image: postgres
env:
POSTGRES_PASSWORD: root123
options: >-
--health-cmd pg_isready
--health-interval 10s
--health-timeout 5s
--health-retries 5
ports:
- …
Run Code Online (Sandbox Code Playgroud) 我正在研究开源项目,该项目已上传到GitHub页面。我正在GitHub上编写其Wiki页面。我想链接上传到slideshare.net的,与此开源项目相关的演示幻灯片。
您能给我建议吗-如何将slideshare.net上的演示文稿幻灯片与GitHub Wiki页面链接?我想在GitHub Wiki页面上显示PPT的第一张幻灯片(包括标题,日期,作者信息)。
我愿意将演示文稿幻灯片移动到slideshare.net以外的其他网站上。
在我当前的项目中,我试图链接用xtext编写的DSL规范和用StringTemplate编写的代码生成器.
例如,我的DSL规范的语法如下.我通过xText提供的很好的编辑器工具输入这些信息.
structs:
TempStruct
tempValue : double;
unitOfMeasurement : String;
abilities :
sensors:
TemperatureSensor
generate tempMeasurement : TempStruct;
attribute responseFormat : String;
Run Code Online (Sandbox Code Playgroud)
上述DSL规范的语法如下:
VocSpec:
'structs' ':'
(structs += Struct)+
'abilities' ':'
('sensors' ':' (sensors += Sensor)+ )+
;
Sensor:
name = ID
((attributes += Attributes ) |
(sources += Sources))*
;
Sources:
'generate' name=ID ':' type = Type ';'
;
Attributes:
'attribute' name=ID ':' type = Type ';'
;
Struct:
name = ID
(fields += Field)+
;
Field:
name=ID ':' …
Run Code Online (Sandbox Code Playgroud) 目前,我正在为Android设备开发可扩展的传感和数据处理框架.该框架将通过Android移动设备实现各种数据信号(例如,位置,wifi,电池,加速度计).
我认为这些数据信号是发布数据的发布者.扩展Activity(public class MainActivity extends Activity
)的类是订阅者.
我相信实现此功能的理想方式是在发布者和订阅者之间实现一个小的发布/订阅中间件.
您能否建议一下 - 如何在Android设备上实现发布/订阅中间件?对我来说,主要问题是 - MainActivity
班级如何注册自己以获取事件以及各种数据信号如何通知许多已登记的MainActivity
班级?请注意,此中间件不需要通过网络进行通信等高级功能.
我画了UML类图.现在,我的任务是将该UML类图转换为等效的Java代码.
我不想使用任何自动化工具,它从UML图生成Java代码.
请提供一些指针(webLink,PDF文件,其他),其中讨论了UML及其等效的Java程序.
在我目前的工作中,我必须编写一个替换函数.替换函数,它将文件路径(例如/sim/device
)作为输入并生成输出 - sim.device
.
在java中,我尝试过replace("/", ".")
.但是,这个功能产生输出.sim.device
.
我的问题是"在Java中,是否有任何函数可以解决我的目的,还是应该自己编写函数?" 你也可以建议高效的java代码.