小编Vic*_*sky的帖子

Java:一个文件中的多个类声明

在Java中,您可以在单个文件中定义多个顶级类,只要其中一个是公共的(参见JLS§7.6).见下面的例子.

  1. 是否有此技术整洁名(类似于inner,nested,anonymous)?

  2. JLS表示系统可能会强制执行这些辅助类不能的限制referred to by code in other compilation units of the package,例如,它们不能被视为包私有.这真的在Java实现之间发生了变化吗?

例如,PublicClass.java:

package com.example.multiple;

public class PublicClass {
    PrivateImpl impl = new PrivateImpl();
}

class PrivateImpl {
    int implementationData;
}
Run Code Online (Sandbox Code Playgroud)

java class

230
推荐指数
5
解决办法
24万
查看次数

Docker Compose不允许使用本地图像

以下命令失败,尝试从Docker Hub中提取图像:

$ docker-compose up -d
Pulling web-server (web-server:staging)...
ERROR: repository web-server not found: does not exist or no pull access
Run Code Online (Sandbox Code Playgroud)

但我只是想使用图像的本地版本,它存在:

$ docker images
REPOSITORY           TAG                 IMAGE ID            CREATED             SIZE
web-server           staging             b94573990687        7 hours ago         365MB
Run Code Online (Sandbox Code Playgroud)

为什么Docker不在本地存储的图像中搜索?


这是我的Docker Compose文件:

version: '3'
services:
  chat-server:
    image: chat-server:staging
    ports:
      - "8110:8110"
  web-server:
    image: web-server:staging
    ports:
      - "80:80"
      - "443:443"
      - "8009:8009"
      - "8443:8443"
Run Code Online (Sandbox Code Playgroud)

和我的.env文件:

DOCKER_HOST=tcp://***.***.**.**:2376
DOCKER_TLS_VERIFY=true 
DOCKER_CERT_PATH=/Users/Victor/Documents/Development/projects/.../target/docker
Run Code Online (Sandbox Code Playgroud)

docker docker-compose

42
推荐指数
8
解决办法
4万
查看次数

为什么要使用Yeoman的发电机而不是Maven的原型?

我注意到Yeoman的生成器更侧重于客户端代码生成,而Maven的原型则在服务器端.但是我仍然不完全理解为什么有必要创建Yeoman,如果Maven能很好地应对代码生成任务呢?

我想,有可能为Angular JS编写一个Maven的原型,并使用它而不是类似流行的Yeoman的生成器.但是没有这样的原型,或者至少它不那么受欢迎.

那么,请告诉我为什么?


我在这个场合的猜测结果并非如此.

我认为Maven无法在现有项目中生成组件.但是这是错误的.我发现一个可选的<allowPartial>true</allowPartial>标签可以运行原型:甚至在现有项目上生成.

因此,如果没有你的帮助,我无法迅速回答这个问题.

javascript java maven angularjs yeoman

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

为什么首选使用GCM进行推送通知?

我知道,就是这样.但我不明白,为什么?

为什么不定期简单地向服务器发送查询?当然,它可能会释放电池并增加互联网流量.我明白了.但是,如何使用Google Cloud Messaging可以消除这些问题?

我找到了答案.但对我来说这不是很清楚.

谁能给我一个明确的解释?

android push-notification google-cloud-messaging

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

使用Git和IntelliJ IDEA保持两个不同更改列表中的一个文件的更改

我使用Git作为VCS和IntelliJ IDEA作为IDE.

我想在更改列表中保留我的本地更改(我将不会提交的更改),名称为"local",并在我的默认更改列表中进行其他更改(旨在提交).当我有本地更改和我打算在同一文件中提交的更改时,会发生此问题.在这种情况下,在执行提交之前,我需要检查这些文件中的所有更改并丢弃所有本地更改.

有没有办法在第一个更改列表中保留文件中的一部分更改而在第二个更改列表中保留另一部分?

git version-control intellij-idea

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

如何控制自定义Spring Data Neo4j存储库方法的深度?

例如,如果我想按名称获取用户列表:

class UserRepository extands GraphRepository<User> {

    List<User> findByName(String name);
}
Run Code Online (Sandbox Code Playgroud)

那么如何将加载深度设置为2?

我试图在SDN 4.0.0.RC2文档中找到答案,但它没有包含有关此问题的任何内容.

neo4j spring-data spring-data-neo4j spring-data-neo4j-4

6
推荐指数
2
解决办法
1995
查看次数

"实际覆盖:实现Java接口时,以下声明具有相同的JVM签名"

我遇到以下错误,试图扩展RuntimeException并使用我的Kotlin代码实现Java中定义的GraphQLError接口.这是错误:

意外覆盖:以下声明具有相同的JVM签名(getMessage()Ljava.lang.string;):

public open fun <get-message>(): String? defined in NegativeCountException public open fun getMessage(): String? defined in NegativeCountException

以下是我的代码:

class NegativeCountException() : RuntimeException(), GraphQLError {
  override fun getMessage(): String? {
    TODO("not implemented")
  }
  <...>
}
Run Code Online (Sandbox Code Playgroud)

GraphQLError接口在哪里,在Java中定义,如下所示:

public interface GraphQLError {
  String getMessage();
  <...>
}
Run Code Online (Sandbox Code Playgroud)

好像它与getMessage()定义中的冲突Throwable.

我无法更改界面的代码,因为它来自一个库.

如何创建自己的运行时异常,它将实现GraphQLError


PS:我也试过以下,并收到了一个非常类似的错误:

class NegativeCountException(override val message: String?) : RuntimeException(), GraphQLError {
  <...>
}
Run Code Online (Sandbox Code Playgroud)

java kotlin kotlin-interop

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

注释为ResponseStatus的自定义异常的动态消息

我正在尝试为我的自定义Exception提供动态消息,如下面的代码片段中所示:

@ResponseStatus(value = HttpStatus.NOT_FOUND, reason = "Entity not found")
public class EntityNotFoundException extends RuntimeException {
    public EntityNotFoundException(String msg) {
        super(msg);
    }
}
Run Code Online (Sandbox Code Playgroud)

但总是当我抛出它如下所示:

throw new EntityNotFoundException("User entity not found");
Run Code Online (Sandbox Code Playgroud)

在浏览器中,我收到消息"未找到实体"而不是"未找到用户实体".

怎么做到这一点?

spring spring-mvc

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

rebase结果如何与合并结果不同?

在GitHub的一篇文章中,我阅读了以下内容:

在以下情况下,您无法自动在GitHub上进行重新绑定和合并:重新提交提交被认为是"不安全的",例如在没有合并冲突的情况下可能存在rebase但会产生与合并不同的结果.

我不清楚rebase如何产生与合并不同的结果.

任何人都可以解释它是如何可能的?


链接到原始文章:https: //help.github.com/articles/about-pull-request-merges/

git merge github rebase

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

如何转发到外部url?

我的基于 Spring 的应用程序在http://localhost下运行。另一个应用程序正在http://localhost:88下运行。我需要实现以下目标:当用户打开http://localhost/page时,内容为http://localhost:88/content时,应显示

我想我应该使用转发,如下所示:

@RequestMapping("/page")
public String handleUriPage() {
    return "forward:http://localhost:88/content";
}
Run Code Online (Sandbox Code Playgroud)

但似乎转发到外部 URL 不起作用。

我怎样才能用 Spring 实现这种行为?

spring spring-mvc forward spring-boot

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