小编Sky*_*ker的帖子

使用maven发布插件时,"Git致命:ref HEAD不是一个象征性的参考"

我在运行Maven发布插件准备步骤时mvn release:prepare --batch-mode -DreleaseVersion=1.1.2 -DdevelopmentVersion=1.2.0-SNAPSHOT -Dtag=v1.1.2 -X从Atlassian Bamboo计划获得以下错误输出.但是在命令行中执行相同操作可以正常工作.完整的错误堆栈如下.

任何想法如何解决?

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-release-plugin:2.4.2:prepare (default-cli) on project hpcmom: An error is occurred in the checkin process: Exception while executing SCM command. Detecting the current branch failed: fatal: ref HEAD is not a symbolic ref -> [Help 1]
    org.apache.maven.lifecycle.LifecycleExecutionException: Failed to execute goal org.apache.maven.plugins:maven-release-plugin:2.4.2:prepare (default-cli) on project hpcmom: An error is occurred in the checkin process: Exception while executing SCM command.
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:217)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:153)
    at org.apache.maven.lifecycle.internal.MojoExecutor.execute(MojoExecutor.java:145)
    at …
Run Code Online (Sandbox Code Playgroud)

git release bamboo maven maven-release-plugin

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

多态异常处理:如何捕获子类异常?

我有以下两个C++异常的简单层次结构:

class LIB_EXP ClusterException : public std::exception {
public:
    ClusterException() { }
    ClusterException(const std::string& what) { init(what); }
    virtual const char* what() const throw() { return what_.c_str(); }
    virtual ~ClusterException() throw() {}
    virtual ClusterException* clone() { return new ClusterException(*this);  } 
protected:
    void init(const std::string& what) { what_ = what; }
private:
    std::string what_;
};

class LIB_EXP ClusterExecutionException : public ClusterException {
public:
    ClusterExecutionException(const std::string& jsonResponse);
    std::string getErrorType() const throw() { return errorType_; }
    std::string getClusterResponse() const throw() { return clusterResponse_; …
Run Code Online (Sandbox Code Playgroud)

c++ python boost exception boost-python

24
推荐指数
1
解决办法
1169
查看次数

如何在ssh/remote bash命令中转义单引号字符?

我正在构建一小组脚本来远程启动,停止和检查进程的状态.在stop这些脚本应该寻找一个过程,并杀死它.因此,我做:

ssh deploy@hera 'kill -9 `ps -ef | grep MapReduceNode | grep -v "grep" | awk -F " " '{print $2}' | head -n 1`'
Run Code Online (Sandbox Code Playgroud)

这里的问题是awk标记化步骤需要单引号,并且这些单引号与用于通过ssh执行远程命令的单引号冲突.这些单引号如何被转义?

ssh bash quoting

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

Hadoop 2.2.0无法运行start-dfs.sh并出现错误:JAVA_HOME未设置且无法找到

我在Ubuntu 12.x中正在进行Hadoop的安装工作.我已经有一个deploy用户,我打算用它来在一组机器上运行hadoop.下面的代码演示了我的问题基本上我ssh olympus没有问题但是start-dfs.sh没有做到这一点:

deploy@olympus:~$ ssh olympus
Welcome to Ubuntu 12.04.4 LTS (GNU/Linux 3.5.0-45-generic x86_64)

    * Documentation:  https://help.ubuntu.com/

Last login: Mon Feb  3 18:22:27 2014 from olympus
deploy@olympus:~$ echo $JAVA_HOME
/opt/dev/java/1.7.0_51

deploy@olympus:~$ start-dfs.sh
Starting namenodes on [olympus]
olympus: Error: JAVA_HOME is not set and could not be found.
Run Code Online (Sandbox Code Playgroud)

ssh hadoop

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

Linux/opt/*文件夹和权限

我正在使用该文件夹/opt/来安装通用软件,否则这些软件将无法作为系统软件包安装程序的一部分提供,并且应该可供Linux中的许多(开发人员)用户使用(目前使用Ubuntu):

/opt/dev/eigen/3.1.3
/opt/dev/boost/1.54
/opt/git/myproject1.git
/opt/git/myproject2.git 
Run Code Online (Sandbox Code Playgroud)

将通用软件放在那里是常见的做法吗?权限怎么样?我倾向于这,chmod -R 777 /opt/dev但我认为这是一个非常糟糕的做法.关于这方面的最佳做法的建议?可能是添加开发人员组并给予他们所有权限或者?

注意git是一种特殊情况,但仍然所有开发人员都需要访问它,因为推送更改意味着使用开发人员凭据在该路径下创建目录和文件.

linux permissions ubuntu

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

Pull Request和分支之间有什么区别?

GitHubAtlassian Stash的上下文中,有一个共同的功能来执行Pull请求.Pull Request和分支之间有什么区别?拉取请求看起来像是一种不同的方式来调用分支或?

git github pull-request git-branch bitbucket-server

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

如何将Scala数组[Byte]转换为Java byte []?

我有一个Akka应用程序,其中的演员用Scala编写,其他用Java编写.在一个案例中,Scala Actor写了一个Array[Byte],我需要从Java Actor反序列化它.在这个用例中,我最终需要Java中的String表示,Array[Byte]这样才能解决我的问题.

斯卡拉演员:

val outputStream = new java.io.ByteArrayOutputStream()
val bufferedOutputStream = new java.io.BufferedOutputStream(outputStream, 1024)
val exitCode : Integer = processBuilder #> bufferedOutputStream !
bufferedOutputStream.flush
val content = outputStream.toByteArray // this gives an Array[Byte]
javaActorRef.tell(content, getSelf())
Run Code Online (Sandbox Code Playgroud)

Java演员:

/**
 * {@inheritDoc}
 */
@Override
public void onReceive(Object object) throws Exception {
    // object has a Scala Array[Byte] how do I convert here to 
    // byte[] or to String?
Run Code Online (Sandbox Code Playgroud)

java interop scala language-interoperability

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

Hibernate javassist proxies和`Object#equals`

#equals在Java中为UDT 提供实现时,其中一个条件是传递的参数对象必须是当前类的实例,否则我们会失败 - 快速return false查看Effective Java(EJ2).但是,在使用Hibernate 4时,由于延迟加载,这种#equals情况会失败,因此最终会导致javassist代理实例.什么是克服这个问题的最佳选择?我能想到的几个选择是:

  • 扩展equals实现以考虑代理案例.缺点:可维护性收费,对Hibernate代理基础架构的硬连线依赖,hacky,实体或域模型应该与所使用的ORM无关,即因为它们可能在不需要ORM的情况下重用,例如Swing UI.
  • 在调用之前检查它是否是代理equals.缺点:并非总是可能,即处理集合和隐式调用equals,例如Map.
  • 避免使用延迟加载.缺点:在所有用例中都不合理也没有效率.

UPDATE

再次回顾EJ2我相信以下内容适用于所有场景(Type-Type,Type-Proxy,Proxy-Type和Proxy-Proxy),但正如下面的一条评论中所指出的,如果将Type与之比较,它可能永远循环完全不同的类型,例如Person.equals(Employee),两者都使用相同的等于EJ2标准.

    if (this.getClass() != anObject.getClass())
    {
        return anObject.equals(this);
    }
Run Code Online (Sandbox Code Playgroud)

java orm hibernate javassist

10
推荐指数
2
解决办法
3635
查看次数

如何使用CMake测试C++应用程序没有内存错误?

我在CMake中有一个C++项目,我已经实现了单元测试(使用GoogleTest)以及集成测试,即执行应用程序并使用regexp检查结果,例如

add_test(NAME MyAppIntegration.testRefitRunMse COMMAND my_application "--refit=true")
set_tests_properties(MyAppIntegration.testRefitRunMse PROPERTIES PASS_REGULAR_EXPRESSION "mse\\=1\\.53611e\\-05")
Run Code Online (Sandbox Code Playgroud)

现在我想做同样的事情,但运行应用程序来检测内存错误,例如只需运行./my_application并检查valgrind的内存错误.我怎样才能做到这一点?请注意,我所知道的ctest -D ExperimentalMemCheckctest -T memcheck,但在这里我结束了错误Cannot find file DartConfiguration.tcl这似乎与我不需要仪表板配置.

c++ cmake ctest

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

模板错误:非类型".. [与T = T]不是类型名称"

尝试键入我的内存对齐方式我提出了以下构造(由于我需要更正GNU版本,因此仍然需要进行一些工作):

#if defined(__GNUG__)
template <typename T>
struct sfo_type {
    typedef T* restrict __attribute__((aligned(32))) aptr32;
};

#elif defined(__INTEL_COMPILER)
template <typename T>
struct sfo_type {
    typedef T* restrict __attribute__((aligned(32))) aptr32;
};
#endif  
Run Code Online (Sandbox Code Playgroud)

然后我尝试像这样使用它:

template<typename T>
class tsfo_vector {
private:
   sfo_type<T>::aptr32  m_data;
   int                  m_size;
...
Run Code Online (Sandbox Code Playgroud)

但后来我收到以下错误信息:

/Users/bravegag/code/fastcode_project/code/src/sfo_vector.h(43): error: nontype "sfo_type<T>::aptr32 [with T=T]" is not a type name
 sfo_type<T>::aptr32 m_data;
 ^
Run Code Online (Sandbox Code Playgroud)

任何人都可以在这里建议什么是错的吗?

c++ templates compiler-errors cross-compiling

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