关于nifiExecuteScriptprocessorpython和groovy语言实现和noalternativesforpython的问题就给大家分享到这里,感谢你花时间阅读本站内容,更多关于a
关于nifi ExecuteScript processor python 和 groovy 语言实现和no alternatives for python的问题就给大家分享到这里,感谢你花时间阅读本站内容,更多关于android studio 出现 Error:Execution failed for task '':app:processDebugResources''. > 的问题、AndroidStudio3.0 Error:Execution failed for task '':app:processDebugResources''.、Android编译程序出现Execution failed for task '':app:processDebugResources''.、Chrome Android 上 createScriptProcessor 的奇怪行为等相关知识的信息别忘了在本站进行查找喔。
本文目录一览:- nifi ExecuteScript processor python 和 groovy 语言实现(no alternatives for python)
- android studio 出现 Error:Execution failed for task '':app:processDebugResources''. > 的问题
- AndroidStudio3.0 Error:Execution failed for task '':app:processDebugResources''.
- Android编译程序出现Execution failed for task '':app:processDebugResources''.
- Chrome Android 上 createScriptProcessor 的奇怪行为
nifi ExecuteScript processor python 和 groovy 语言实现(no alternatives for python)
研究了几天 nifi 的 ExecuteScript processor,在同事的帮助下终于调试通过了,记录 python 和 groovy 语言的不同实现:
python:
import json import java.io from org.apache.commons.io import IOUtils from java.nio.charset import StandardCharsets from org.apache.nifi.processor.io import StreamCallback from org.apache.nifi.processors.script import ExecuteScript class PyStreamCallback(StreamCallback): def __init__(self): pass def process(self, inputStream, outputStream): text = IOUtils.toString(inputStream, StandardCharsets.UTF_8) obj=json.load(text) newObj = { "Source": "NiFi", "ID": "python", "Name": "test" "meta_data": obj[''meta''] } outputStream.write(bytearray(json.dumps(newObj, indent=4).encode(''utf-8''))) flowFile = session.get() if flowFile != None: flowFile = session.write(flowFile, PyStreamCallback()) session.transfer(flowFile, ExecuteScript.REL_SUCCESS) else: pass
groovy:
import org.apache.commons.io.IOUtils
import java.nio.charset.*
def flowFile = session.get();
def slurper = new groovy.json.JsonSlurper()
if (flowFile == null) {
return;
}
def flag=false
flowFile = session.write(flowFile,
{ inputStream, outputStream ->
def text = IOUtils.toString(inputStream,StandardCharsets.UTF_8)
def obj = slurper.parseText(text)
flag=false
def bbdErrorLog= obj.bbd_error_log
def bbdErrorLogs=bbdErrorLog.split("code\":")
if(bbdErrorLogs.size()==2){
if (bbdErrorLog.startsWith("[{\"message")){
errorLogCode=Integer.parseInt(bbdErrorLogs[1].split("}")[0])
}else{
errorLogCode=Integer.parseInt(bbdErrorLogs[1].split(",")[0])
}
if (errorLogCode==2000002){
pattern= ~"吊销 | 注销"
def enterprise_status=obj.enterprise_status
def company_type=obj.company_type
if (company_type=="农民专业合作社"||company_type=="集体所有制"||company_type=="股份合作制"){
flag=true
}else if(enterprise_status=~pattern){
flag=true
}
}else if (errorLogCode==2000302){
flag=true
}else if (errorLogCode==1000202){
pattern= ~"吊销 | 注销"
def enterprise_status=obj.enterprise_status
if(enterprise_status=~pattern){
flag=true
}
}else if (errorLogCode==1001402){
pattern= ~/[\u4e00-\u9fa5]/
def regOrg=obj.regorg
if(regOrg==~pattern&®Org.length()<20){
flag=true
}
}
}else{
errorLogList=[1000101,1000401,1000501,1000601,1001201,1001301,1001401,2000002]
isFind=true
for (field in bbdErrorLogs){
if (field=="[{\""||field.startsWith("[{\"message\"")){
continue
}
int num = Integer.parseInt(field.substring(0,7))
if (errorLogList.find{it == num}==null){
isFind=false
}
}
if (isFind){
pattern= ~"吊销 | 注销"
def enterprise_status=obj.enterprise_status
if(enterprise_status=~pattern){
flag=true
}
}
}
def builder = new groovy.json.JsonBuilder()
builder.call(obj)
outputStream.write(builder.toPrettyString().getBytes(StandardCharsets.UTF_8))
} as StreamCallback)
if(flag){
flowFile = session.putAttribute(flowFile, "etl_flag", "DATA_MATCHED")
}else{
flowFile = session.putAttribute(flowFile, "etl_flag", "DATA_NOT_MATCH")
}
session.transfer(flowFile, ExecuteScript.REL_SUCCESS)
android studio 出现 Error:Execution failed for task '':app:processDebugResources''. > 的问题
打开命令窗口 cd 到当前项目路径
window 运行 gradlew assembleDebug --info
linux 运行 ./gradlew assembleDebug --info
查看 error,一般就知道缺少哪个素材了
修改回答
AndroidStudio3.0 Error:Execution failed for task '':app:processDebugResources''.
android studio
Information:Gradle tasks [:app:assembleDebug]
app\build\intermediates\manifests\full\debug\AndroidManifest.xml
Error:(27) error: unknown element <category> found.
Error:(27) unknown element <category> found.
Error:java.util.concurrent.ExecutionException: java.util.concurrent.ExecutionException: com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for details
Error:java.util.concurrent.ExecutionException: com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for details
Error:com.android.tools.aapt2.Aapt2Exception: AAPT2 error: check logs for details
Error:Execution failed for task '':app:processDebugResources''.
> Failed to execute aapt
Information:BUILD FAILED in 10s
Information:6 errors
Information:0 warnings
Information:See complete output in console
解决方法 :
add this code in gradle.properties in the root project:
org.gradle.jvmargs=-Xmx1536m
android.enableAapt2=false
Android编译程序出现Execution failed for task '':app:processDebugResources''.
Android编译程序出现org.gradle.api.tasks.TaskExecutionException: Execution failed for task '':app:processDebugResources''.错误
如何处理
打开AndroidStudio的terminal,在命令行输入命令:gradlew compileDebugSource --stacktrace -info
或gradlew assembleDebug --info
Chrome Android 上 createScriptProcessor 的奇怪行为
如何解决Chrome Android 上 createScriptProcessor 的奇怪行为?
我在 Chrome Android(今天的最新版本)上发现了 createscriptprocessor 的奇怪行为。
因此,我创建了测量上下文频率的小型测试页面。 在我的一些设备(小米 Mi Pad 2 和小米 Mi Mix 2)上,测试显示了不同缓冲区大小(从 256 到 16384)的非常奇怪的结果。例如:
- 缓冲区大小 = 256。声明的频率 = 48000。测量的频率 = 30270。
- 缓冲区大小 = 1024。声明的频率 = 48000。测量的频率 = 35533。
- 缓冲区大小 = 16384。声明的频率 = 48000。测量的频率 = 46886。
下面列出的测试页代码(同一页位于 my hosting,因此您可以使用您的设备对其进行测试):
<body>
<textarea id=field cols=32 rows=4></textarea>
<br>
Buffer size <input id=buf_size value=4096>
<br>
<input type=button value=Start onclick="test_start()">
</body>
<script>
var audCtx;
var recorder;
var start_time;
var buffer_counter = 0;
function test_start()
{
audCtx = new (window.AudioContext || window.webkitaudiocontext)();
navigator.getUserMedia = navigator.getUserMedia || navigator.webkitGetUserMedia || navigator.mozGetUserMedia || navigator.msGetUserMedia;
navigator.getUserMedia({audio: true,video: false},function(s){rec_init(s)},function(e){console.log("Media init error: " + e);});
setInterval("stat()",500);
}
function stat()
{
if (recorder)
{
var curr_time = new Date().getTime() - start_time;
var str = "Declared freq:\t" + recorder.context.sampleRate + ''\n'';
str += "Measured freq:\t" + parseInt(1000 * (buffer_counter * buf_size.value / curr_time)) + ''\n'';
str += "Buffer counter:\t" + buffer_counter + ''\n'';
str += "Measure time:\t" + (curr_time / 1000);
field.value = str;
}
}
function rec_init(s)
{
src = audCtx.createmediastreamsource(s);
recorder = audCtx.createscriptprocessor(buf_size.value,1,1);
start_time = new Date().getTime();
recorder.onaudioprocess = function(d)
{
buffer_counter++;
}
src.connect(recorder);
recorder.connect(audCtx.destination);
}
</script>
所以,测试的想法很简单:Freq =(onaudioprocess 事件的总数)*(缓冲区大小)/(总测试时间)
使用相同设备上的其他浏览器,经过 1 分钟测试后,我测得的频率约为 48000 +/- 50 Hz。
同一 Chrome Android 上的其他设备显示良好的结果。 所有桌面浏览器也显示出良好的效果。
我很奇怪,看起来像性能问题(频繁的事件意味着更多的负载),但 Chrome 分析器在测试期间显示 90% 空闲时间。
有什么问题?
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)
今天关于nifi ExecuteScript processor python 和 groovy 语言实现和no alternatives for python的介绍到此结束,谢谢您的阅读,有关android studio 出现 Error:Execution failed for task '':app:processDebugResources''. > 的问题、AndroidStudio3.0 Error:Execution failed for task '':app:processDebugResources''.、Android编译程序出现Execution failed for task '':app:processDebugResources''.、Chrome Android 上 createScriptProcessor 的奇怪行为等更多相关知识的信息可以在本站进行查询。
本文标签: