小编Yur*_*sov的帖子

Spring数据MongoDb:MappingMongoConverter删除_class

默认的MappingMongoConverter将自定义类型键("_class")添加到数据库中的每个对象.所以,如果我创建一个Person:

package my.dto;
public class Person {
    String name;
    public Person(String name) {
        this.name = name; 
    }
}
Run Code Online (Sandbox Code Playgroud)

并将其保存到db:

MongoOperations ops = new MongoTemplate(new Mongo(), "users");
ops.insert(new Person("Joe"));
Run Code Online (Sandbox Code Playgroud)

mongo中的结果对象将是:

{ "_id" : ObjectId("4e2ca049744e664eba9d1e11"), "_class" : "my.dto.Person", "name" : "Joe" }
Run Code Online (Sandbox Code Playgroud)

问题:

  1. 将Person类移动到不同的命名空间有什么含义?

  2. 是否有可能不用"_class"键污染对象; 没有为Person类编写一个独特的转换器?

mongodb spring-data spring-data-mongodb

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

如何获得semver Maven版本的主要部分?

是否有可能获得主要版本(<Major>.<Minor>.<Patch>)project.version

例如,如果我的版本是1.3.4,我想1稍后在同一个pom.xml的配置中使用它

就像是:

<configuration>
  <name>project_name.${project.version:major}</name>
</configuration>
Run Code Online (Sandbox Code Playgroud)

如果没有,有哪些替代方案?

maven semantic-versioning

17
推荐指数
2
解决办法
7238
查看次数

如何在一次调用中两次调用相同的maven构建

是否可以使用不同的配置参数多次调用相同的maven构建?

我有一个maven构建,使用rpm-maven-plugin创建一个RPM.我传递一个变量(environment),它指定RPM的目标环境:开发,登台或生产.

要为所有环境创建所有RPM,我会调用mvn package -Denvironment=...3次; 我想简化一下.如果我能打mvn package一次电话会很棒,反过来,它会为所有环境构建三个RPM.

你有没有办法做到这一点?

编辑1

到目前为止(基于dm3的最佳答案),我可以在一个版本中创建三个独立的RPM,具有相同的属性.现在的问题是能够environment为每次执行更改属性.有什么建议?

<project>
  <properties>
    <!-- Default Environment -->
    <environment>development</environment>
  </properties>

  <build>
    <plugins>
      <plugin>
        <groupId>org.codehaus.mojo</groupId>
        <artifactId>rpm-maven-plugin</artifactId>
        <version>2.1-alpha-1</version>
        <executions>
          <execution>
            <phase>package</phase>
            <id>package-development</id>
            <goals><goal>rpm</goal></goals>
          </execution>

          <execution>
            <phase>package</phase>
            <id>package-staging</id>
            <goals><goal>rpm</goal></goals>
          </execution>

          <execution>
            <phase>package</phase>
            <id>package-production</id>
            <goals><goal>rpm</goal></goals>
          </execution>
        </executions>
      </plugin>
    </plugins>

    <pluginManagement>
      <plugins>
        <plugin>
          <groupId>org.codehaus.mojo</groupId>
          <artifactId>rpm-maven-plugin</artifactId>
          <version>2.1-alpha-1</version>
          <extensions>true</extensions>

          <configuration>
          ... VERY LONG CONFIG ...
          </configuration>
        </plugin>
      </plugins>
    </pluginManagement>
  </build>
</project>
Run Code Online (Sandbox Code Playgroud)

maven

17
推荐指数
1
解决办法
7821
查看次数

如何通过Jenkins运行Dojo DOH单元测试?

有没有人尝试将Dojo DOH单元测试与Jenkins集成?

我想做以下事情,但如果已经完成,我不想重新发明它.所以,我在想:

  1. 从Jenkins的构建后步骤开始进行DOH测试并等待结果
  2. 在无头浏览器中运行测试(例如Crowbar)
  3. 从Crowbar返回的HTML中解析成功/错误计数
  4. 查找(或编写)一个Jenkins插件,如果有失败的测试,(a)将失败,(b)渲染测试结果,(c)可能将结果集成到CI游戏插件中

问题:

  1. 以前做过吗?
  2. 您是否看到上述大纲的任何问题?
  3. 你知道Jenkins插件会有所帮助,还是我必须建立自己的插件?

javascript dojo unit-testing doh jenkins

15
推荐指数
1
解决办法
2710
查看次数

逗号优先的JS格式化程序

你知道一个支持逗号优先编码风格的JS格式化程序吗?

var a = 'ape'
  , b = 'bat'
  , c = 'cat'
  , d = 'dog'
  , e = 'elf'
  , f = 'fly'
  , g = 'gnu'
  , h = 'hat'
  , i = 'ibu'
  ;
Run Code Online (Sandbox Code Playgroud)

到目前为止,我已经看过JS BeautifierSourceFormatX,但找不到它的选项.

javascript formatting coding-style

13
推荐指数
1
解决办法
1551
查看次数

如何构建maven父级并选择模块数量?

我有一个多模块maven项目.

为了单独构建父级,我运行mvn package -N(其中-N"非递归").

为了构建一些模块,我运行mvn package -pl api,servie(在哪里-pl是"项目").

如何组合这两个以构建api,服务和父级

maven-2

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

如何在运行浏览器化脚本之前设置process.env?

最初html来自后端.服务器具有已定义的process.env.NODE_ENV(以及其他环境变量).该browserified代码被内置一次,并运行在多种环境(staging,production等等),所以它是不可能的内联的环境变量到browserified脚本(通过envify举例).我希望能够在渲染的html中编写环境变量,并使用浏览器化的代码来使用这些变量.那可能吗?

以下是我想象的完成情况:

<html>
  <head>
    <script>window.process = {env: {NODE_ENV: 'production'}};</script>
    <script src="/build/browserified_app.js"></script>
  </head>
</html>
Run Code Online (Sandbox Code Playgroud)

node.js browserify

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

如何让cv :: namedWindow成为OpenCV2的焦点?

这是我的应用程序的简化版本:

Mat img = imread("./picture.png");
namedWindow("Picture", CV_WINDOW_AUTOSIZE);
imshow("Picture", img);
waitKey(0);
Run Code Online (Sandbox Code Playgroud)

当I(同的OpenCV 2.4.3上的MacOS 10.8.2)执行已编译的应用程序打开时,终端窗口下方的窗口和未聚焦.所以,我必须首先点击(或Tab键)它,然后可以点击任何键waitKey来完成.

是否有可能cv::namedWindow自动聚焦?

c++ opencv

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

如何在Maven中仅针对"war"包类型运行插件?

提供了两个Maven项目:J(jar),W(war); 两者都取决于父母P(pom).父级有一个插件,只能为项目"W"运行.

如何做到这一点:

  • 无需创建单独的父项目
  • 不使用配置文件(因此仍然必须执行构建mvn clean package)

J(罐子)

<project>
  <parent>
    <artifactId>P</artifactId>
  </parent>
  <artifactId>J</artifactId>
  <packaging>jar</packaging>
</project>
Run Code Online (Sandbox Code Playgroud)

W(战争)

<project>
  <parent>
    <artifactId>P</artifactId>
  </parent>
  <artifactId>W</artifactId>
  <packaging>war</packaging>
</project>
Run Code Online (Sandbox Code Playgroud)

P(pom)

<project>
  <artifactId>P</artifactId>
  <packaging>pom</packaging>

  <build>
    <plugins>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-jar-plugin</artifactId>
        <executions>
          <execution>
            <phase>package</phase>
            <goals>
              <goal>jar</goal>
            </goals>
            <configuration>
              <classifier>classes</classifier>
            </configuration>
          </execution>
        </executions>
      </plugin>
    </plugins>
  </build>
</project>
Run Code Online (Sandbox Code Playgroud)

java war maven-plugin maven

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

如何监控Node.js中的传出HTTP请求?

我正在为节点编写的应用程序构建一个小型开发人员工具(HUD).在该工具中,我想要显示为了提供该页面而生成的所有HTTP/HTTPS请求(将它们显示给开发人员并记录他们的号码).有没有干净的方法这样做,这不涉及包装类似的东西http.request()?如果没有,为了记录HTTP和HTTPS,需要包装的最低级别方法是什么?TCP连接怎么样?

tcp node.js

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