小编Ily*_*iuk的帖子

Phonegap是否支持根相对路径?什么是最佳做法?

在iOS上阅读带有资产的绝对路径URL的PhoneGap后,我真的很困惑, 并且有几个问题:

  • Phonegap是否支持根相对路径?例如,混合移动开发的Ionic框架在他们的样本中有这样的路径:

    <script src="//ionic/js/ionic.bundle.min.js"></script>

  • Phonegap的最佳做法是什么?

cordova ionic-framework phonegap

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

如何从另一个插件获取资源?

我有2个plguins .在A的MANIFEST.MF中,我在Require-Bundle部分中有插件B. 但是,当我试图让B的从资源一个

ClassFromA.class.getClassLoader().getResource('resource_from_B') 
Run Code Online (Sandbox Code Playgroud)

我变得空了.如果我将B的 resourсe(文件夹)放到A的根部,一切都像魅力一样.我错过了什么吗?

注意:我读过Lars Vogel的文章

Bundle bundle = Platform.getBundle("de.vogella.example.readfile");
URL fileURL = bundle.getEntry("files/test.txt");
File file = null;
try {
    file = new File(FileLocator.resolve(fileURL).toURI());
} catch (URISyntaxException e1) {
    e1.printStackTrace();
} catch (IOException e1) {
    e1.printStackTrace();
}
Run Code Online (Sandbox Code Playgroud)

^当我从eclipse运行我的插件时这个解决方案有效,但当我将它打包到jar并尝试从本地更新站点安装时我得到了

java.lang.IllegalArgumentException: URI is not hierarchical  
Run Code Online (Sandbox Code Playgroud)

PS我还在StackOverflow上阅读了几个相关问题,但未能找到答案:

解决方案:非常感谢@ greg-449.所以正确的代码是:

Bundle bundle = Platform.getBundle("resource_from_some_plugin");
URL fileURL = bundle.getEntry("files/test.txt");
File file = …
Run Code Online (Sandbox Code Playgroud)

eclipse eclipse-plugin eclipse-rcp

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

如何针对gtk 3库运行javaFx应用程序?

如何强制javaFx应用程序使用gtk3库?我知道SWT允许SWT_GTK3=1为此目的设置环境变量.javaFx有任何类似的可能性/解决方法吗?

java gtk javafx

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

maven在项目构建期间挂起约20分钟(过去工作正常)

构建这个maven项目曾经工作很mvn clean install长时间(6个月),但今天执行构建时每次都挂起(尝试使用不同版本的mvn,包括最新的3.5.0以及openJDK和Oracle JDK) -结果是一样的)

kill -3 PID 产量

"resolver-5" #491 daemon prio=5 os_prio=0 tid=0x00007f6da8bd3800 nid=0x16b3 waiting on condition [0x00007f6d68df3000]
   java.lang.Thread.State: WAITING (parking)
    at sun.misc.Unsafe.park(Native Method)
    - parking to wait for  <0x00000006c658c4a8> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
    at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
    at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2039)
    at java.util.concurrent.LinkedBlockingQueue.take(LinkedBlockingQueue.java:442)
    at java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1067)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1127)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:617)
    at java.lang.Thread.run(Thread.java:745)

"resolver-4" #490 daemon prio=5 os_prio=0 tid=0x00007f6da8bd2800 nid=0x16b2 waiting on condition [0x00007f6d69945000]
   java.lang.Thread.State: WAITING (parking)
    at sun.misc.Unsafe.park(Native Method)
    - parking to wait for  <0x00000006c658c4a8> (a java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject)
    at java.util.concurrent.locks.LockSupport.park(LockSupport.java:175)
    at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await(AbstractQueuedSynchronizer.java:2039)
    at …
Run Code Online (Sandbox Code Playgroud)

java maven

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

如何在基于CentOS的Dockerfile中定义OpenJDK 8?

假设有一个CentOS Dockerfile:

FROM centos
Run Code Online (Sandbox Code Playgroud)

为它添加OpenJDK 8的正确方法是什么?

我试图使用与Fedora类似的方法https://github.com/projectatomic/docker-fedora-images/blob/master/java-openjdk-8/Dockerfile

但是当我运行图像时,java版本是"1.7.0_111",即使它预计是JDK 8:

docker run -i -t <image> /bin/bash

[user@2fcc1e47c3cd projects]$ java -version

java version "1.7.0_111"
OpenJDK Runtime Environment (rhel-2.6.7.2.el7_2-x86_64 u111-b01)
OpenJDK 64-Bit Server VM (build 24.111-b01, mixed mode)
Run Code Online (Sandbox Code Playgroud)

有许多描述Oracle JDK安装的来源,但我无法找到任何有关OpenJDK的相关说明

openjdk centos docker dockerfile

5
推荐指数
2
解决办法
8350
查看次数

如何使用Spring Boot的应用程序日志(由slf4j生产)丰富Jaeger opentracing数据?

现有的Spring Boot应用程序正在使用SLF4J记录器。我决定通过opentracing使用Jaeger作为跟踪器的标准API 添加对分布式跟踪的支持。初始设置多么容易,真是太神奇了-所需要的只是在上添加两个依赖项pom.xml

    <dependency>
        <groupId>io.opentracing.contrib</groupId>
        <artifactId>opentracing-spring-web-autoconfigure</artifactId>
        <version>${io.opentracing.version}</version>
    </dependency>

    <dependency>
        <groupId>io.jaegertracing</groupId>
        <artifactId>jaeger-core</artifactId>
        <version>${jaegerVersion}</version>
    </dependency>
Run Code Online (Sandbox Code Playgroud)

并为TracerBean提供配置:

@Bean
public io.opentracing.Tracer getTracer() throws ConfigurationException {
    return new new io.jaegertracing.Tracer.Builder("my-spring-boot-app").build();
}
Run Code Online (Sandbox Code Playgroud)

所有工作都像一个咒语-Jaeger处理应用程序请求并创建跨度:

在此处输入图片说明

但是,在跨度Logs中,只有preHandleafterCompletion事件包含在请求执行期间被调用的有关类/方法的信息(不slf4j收集由logger 生成的日志):

在此处输入图片说明

现在的问题是,如果它是可以配置示踪至拾取由应用记录仪(产生的日志slf4j在我的情况),使所有的应用程序日志进行经由:LOG.info/ LOG.warn/ LOG.error等将也反映在积

注意:我想出了如何通过API 手动记录跨度,opentracing例如:

Scope scope = tracer.scopeManager().active();
if (scope != null) {
    scope.span().log("...");
}
Run Code Online (Sandbox Code Playgroud)

并对标签进行一些手动操作,ERROR以便在过滤器中进行异常处理,例如

} catch(Exception ex) {
    Tags.ERROR.set(span, true); …
Run Code Online (Sandbox Code Playgroud)

logging slf4j spring-boot opentracing jaeger

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

che.openshift.io - 以 SUDO 身份运行终端

我正在使用che.openshift.ioRed Hat 的 Eclipse Che。我有一个 PHP Laravel Stack 的工作区。当我尝试从 php 终端以 SUDO 的形式运行命令时,出现错误。

SUDO - not a command /
SU - must be run from a terminal
Run Code Online (Sandbox Code Playgroud)

有人可以帮助我以 root 用户身份运行吗?我必须heroku CLI从终端安装,这只能通过 root 用户完成。

eclipse-che redhat-containers

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

带有@RequestParam和@RequestBody的Spring @GetMapping因HttpMessageNotReadableException而失败

对端点的请求失败,并显示以下错误:

400错误请求org.springframework.http.converter.HttpMessageNotReadableException:缺少必需的请求正文

@GetMapping
public List<SomeObject> list(@RequestParam(required = false) String parameter, @RequestBody String body, @RequestHeader("Authorization") String token) {
.....
}
Run Code Online (Sandbox Code Playgroud)

如果@GetMapping会改变@PostMapping一切就像魅力一样.有什么想法到底是怎么回事?

注意: Swagger用于请求发送,因此错误不太可能在Curl中

更新: 所以,它看起来像春天不支持@RequestBody@GetMapping.我还是想不通为什么?@DeleteMapping@RequestBody工作正常,并根据HTTP/1.1 GET请求可能包含体- stackoverflow.com/questions/978061/http-get-with-request-body

IMO看起来有点不一致允许身体进入DELETE但禁止进入GET

spring http swagger spring-restcontroller

4
推荐指数
1
解决办法
9465
查看次数

如何从具有特定标签的命名空间中获取 Pod?

可以获取集群上的所有 Pod:

kubectl get pod --all-namespaces -o wide
Run Code Online (Sandbox Code Playgroud)

还可以获取集群上具有特定标签的所有 Pod:

kubectl get pod --all-namespaces -o wide --selector some.specific.pod.label
Run Code Online (Sandbox Code Playgroud)

甚至可以获取集群特定节点上的所有 pod:

kubectl get pods --all-namespaces -o wide --field-selector spec.nodeName=<node>
Run Code Online (Sandbox Code Playgroud)

问题是,如何从具有特定标签的命名空间中获取所有 pod?

例如kubectl get pod --namespace-label some.specific.namespace.label -o wide(伪代码)

kubernetes kubectl kubernetes-pod

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

从jetty 8迁移到jetty 9后,ProxyServlet停止工作

我有一个eclipse插件,它使用带有ProxyServlet的jetty服务器.基本上,实现如下:

    ServletHolder proxyServletHolder = new ServletHolder(new SubClassOfProxyServlet()); 
    proxyServletHolder.setAsyncSupported(true);
    ServletHandler proxyServletHandler = new ServletHandler();
    proxyServletHandler.addServletWithMapping(proxyServletHolder, "/mapping/url");
Run Code Online (Sandbox Code Playgroud)

之后,我将代理处理程序添加到处理程序列表并将此列表设置为服务器:

    HandlerList handlers = new HandlerList();
    handlers.setHandlers(new Handler[] {
            . // Other Handlers
            .
            proxyServletHandler,
            .
            .
            .
            new DefaultHandler()
        });
    server.setHandler(handlers);
Run Code Online (Sandbox Code Playgroud)

一切都像对码头8的魅力一样,但在迁移到码头9后,我收到以下错误:

Caused by: java.lang.IllegalStateException: No server executor for proxy at org.eclipse.jetty.proxy.ProxyServlet.createHttpClient(ProxyServlet.java:279) at org.eclipse.jetty.proxy.ProxyServlet.init(ProxyServlet.java:123) ... 24 more

使用ProxyServer的机制是否已更改?我错过了什么吗?

eclipse-plugin jetty

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