小编Moo*_*lit的帖子

如何使用java 8功能简化重试代码块

在我的代码中,我有一个试图连接到某个外部接口的部分,如果失败,那么它将重试它固定的次数.代码有效,但有点难看.我想知道是否可以使用一些奇特的Java8功能以更优雅的方式完成此操作?

int count = 0;
final int maxRetries = 3;
while ( count < maxRetries )
{
   try
   {
     // Some Code
     // break out of loop on success
   }
   catch ( final ExecutionException e )
   {
      LOG.debug( "retrying..." );
      if ( ++count >= maxRetries )
      {
         LOG.debug( "do something else...");
         //do something else
      }
   }
}
Run Code Online (Sandbox Code Playgroud)

java java-8

11
推荐指数
3
解决办法
1万
查看次数

如何#include第三方图书馆

我已经构建并安装了一个名为OhNet的库.在安装make install了相应的框架头文件之后usr/local/include/ohNet.现在我想在我的C++项目中使用库(我正在使用eclipse)但是当我尝试包含一些头文件时,eclipse无法找到这些文件.据我所知,eclipse应默认搜索这些目录中的头文件(/ usr/include,/ usr/local/include,...)....我需要做什么才能使用该库?我是C++的新手,之前没有使用过第三方资源.

谢谢.

--EDIT--我只想写一个简单的"helloworld"程序来验证我是否正确地包含了框架.为了做到这一点,我想要实现课程OpenHome::Net::DvDeviceStdStandard.请参阅:ohNet C++参考

我现在可以使用包含头文件: #include <ohNet/OpenHome/Net/Core/DvDevice.h>工作正常.但是我怎么能创建一个类型的对象OpenHome::Net::DvDeviceStdStandard?现在?Eclipse说这种类型无法解决.:(

#include <iostream>
#include <ohNet/OpenHome/Net/Core/DvDevice.h>

using namespace std;

int main() {

    OpenHome::Net::DvDeviceStdStandard device; //type cannot be resolved
    cout << "!!!Hello World!!!" << endl;
    return 0;
}
Run Code Online (Sandbox Code Playgroud)

c++ build include include-path libraries

8
推荐指数
1
解决办法
2万
查看次数

将不存在的主机目录挂载到非根容器中

假设我有一个以非 root用户运行的容器,我想将一个卷目录从主机绑定安装到该容器中。然后容器将写入该目录。说,主机上的目录是/tmp/container/data. 如果该路径在主机上存在,我观察到它是通过所有权创建的(由 docker)root。因此,容器无法向该目录写入任何内容(访问被拒绝),因为我的容器未使用用户root运行。

当然,我可以/tmp/container/data在启动容器之前在主机端创建具有正确权限的目录,但是这个解决方案显然不能扩展 - 我必须为每个我想要使用绑定卷的容器都这样做目录不存在的主机。

所以我的问题是,将来自主机的绑定卷用于尚不存在的目录,同时仍然让非根容器具有对该卷的写访问权限的最佳方法是什么。

docker

8
推荐指数
1
解决办法
3958
查看次数

如何匹配AspectJ中没有特定注释的方法

我有一个名为@Invisible的自定义Annotation.现在我想匹配所有调用一个没有@Invisible Annotation的方法.我怎样才能做到这一点?(带注释样式开发)

我的第一次尝试是:

@Pointcut("execution(!@my.package.Invisible * some.other.package.execute(..))")
Run Code Online (Sandbox Code Playgroud)

但这似乎不起作用......

换句话说:如果方法具有Invisible注释,我想忽略它.否则我想用我的建议执行一些代码......

java annotations aspectj pointcut

7
推荐指数
1
解决办法
1080
查看次数

如何在apache karaf中安装和运行osgi bundle

我有一个简单的问题.我按照本教程创建了一个HelloWorld osgi包.如何使用apache Karaf安装和启动此捆绑包?如何使用osgi:install命令引用bundle?

谢谢.

java apache osgi bundle

7
推荐指数
2
解决办法
2万
查看次数

TextView与背景和居中的文本

我想创建一个具有自定义背景的TextView.特别是我希望有一个看起来像这样的Text视图.我知道我可以设置TextView的背景android:background="@drawable/displaybackground但是我如何在这个textview中对齐文本.文本应显示在Textview的中心,如上图所示.

亲切的问候

android background textview

7
推荐指数
2
解决办法
8203
查看次数

How to use Androids' speech to text with audio sample file

I was able to run an example project which uses Android speech to text using this code:

   private void startVoiceRecognitionActivity()
    {
        Intent intent = new Intent(RecognizerIntent.ACTION_RECOGNIZE_SPEECH);
        intent.putExtra(RecognizerIntent.EXTRA_LANGUAGE_MODEL,
                RecognizerIntent.LANGUAGE_MODEL_FREE_FORM);
        intent.putExtra(RecognizerIntent.EXTRA_PROMPT, "Voice recognition Demo...");
        startActivityForResult(intent, REQUEST_CODE);
    }
Run Code Online (Sandbox Code Playgroud)

This works fine, but I was wondering, is it possible to use speech to text with an audio sample (byte array?) instead of recorded voice?

kind regards

audio android speech-to-text

7
推荐指数
1
解决办法
1万
查看次数

使用Android智能手机和其他设备进行服务发现

在我的环境中,我有Android智能手机和其他一些设备.其他设备正在运行linux.所有设备都通过Wifi连接到本地网络.现在我希望智能手机识别并发现网络中的其他设备,因此我需要实现某种服务发现.其他设备上不应该有用户交互.之后,两个设备应该能够相互配对.

我读过Android支持网络服务发现(NSD).这是一件好事,但这似乎只适用于Android设备,对吧?就我而言,其他设备是运行嵌入式Linux的自定义硬件.编程语言也不尽相同.其他决策的应用是使用C++实现的.

我还读过有关简单服务发现协议(SSDP)的内容.我想这应该以独立于平台的方式工作,对吧?您能否提供一个简单的解释如何使用SSDP实现这一目标?
您会推荐SSDP来实施服务发现吗?android和c ++有什么有用的库吗?

或者你能否提出其他方法来实现我想要做的事情?

问候

c++ android service-discovery ssdp

6
推荐指数
1
解决办法
888
查看次数

在折线图中间绘制垂直线(指标)

我正在使用名为MPAndroidChart的图表库,我对它非常满意.但是,我想绘制一条粗垂直线(作为背景,而不是数据)作为线图中间的指示器.我怎样才能做到这一点?

最好的祝福.

android mpandroidchart

6
推荐指数
1
解决办法
4874
查看次数

如何正确地从groovy调用shell命令

我想从我的groovy脚本执行shell命令.我测试了以下内容:

"mkdir testdir".execute()
Run Code Online (Sandbox Code Playgroud)

这只是工作正常.现在我想制作一个文件,写一些文件,然后打开一个文本编辑器来查看文件.

def execute(cmd) {
   def proc =  cmd.execute()
   proc.waitFor()
}

execute("touch file")
execute("echo hello > file")
execute("gedit file")
Run Code Online (Sandbox Code Playgroud)

现在gedit正确打开但文件中没有"hello"字符串.这是怎么回事?!?

shell groovy command file

5
推荐指数
1
解决办法
5593
查看次数