小编MRK*_*187的帖子

如何使用Gitlab CI构建Java Maven项目?

我一直在试验没有成功,我正在运行一个在Linux上托管的Gitlab,并试图了解CI功能.

根据Gitlab文档,您只需要创建一个.gitlab-ci.yml文件,即Travis-CI的Gitlab实现.现在从它的外观来看,你可以完成很多工作.gitlab-ci.yml,但很多文档都引用了Ruby和其他语言.关于如何构建Java Maven项目没有任何说法.

如何在Java中构建一个简单的应用程序?我可以使用共享运行器,还是应该使用特定的运行器,在这种情况下,我应该选择哪种或哪种运行器实现:ssh,docker或shell?那么,我应该把.gitlab-ci.yml文件放在文件中至少用Maven构建项目?

java spring maven gitlab-ci gitlab-omnibus

61
推荐指数
5
解决办法
6万
查看次数

从java代码调用外部javascript函数

通过使用Java Scripting API,我可以在Java中执行JavaScript.但是,有人可以解释我需要添加到此代码中的内容,以便能够调用C中的函数:/Scripts/Jsfunctions.js

import javax.script.*;

public class InvokeScriptFunction {
public static void main(String[] args) throws Exception {
    ScriptEngineManager manager = new ScriptEngineManager();
    ScriptEngine engine = manager.getEngineByName("JavaScript");

    // JavaScript code in a String
    String script1 = (String)"function hello(name) {print ('Hello, ' + name);}";
    String script2 = (String)"function getValue(a,b) { if (a===\"Number\") return 1; 
                     else return b;}";
    // evaluate script
    engine.eval(script1);
    engine.eval(script2);

    Invocable inv = (Invocable) engine;

    inv.invokeFunction("hello", "Scripting!!" );  //This one works.      
 }
}
Run Code Online (Sandbox Code Playgroud)

javascript java rhino function-call

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

clojure代码给出错误:java.lang.Integer无法强制转换为clojure.lang.IFn

嗨,我有这个学校项目,我差不多完成了所以我不需要代码的帮助,问题是我从来没有在clojure中编码但是为了这个任务必须尝试并使用绑定表单捕获clojure中的宏,有一些REPL命令可以为赋值传递给出不同的响应,

无论如何我得到一个错误,我一直在谷歌搜索,但没有任何具体的这个问题和大多数解释基本上需要有自己的解释似乎没有什么似乎是初学者适应所以它对我没有多大帮助.

(defmacro safe [bindings & code]
(if (list? bindings)
`(try 
   ~bindings 
  (catch Throwable except# except#)) 

(if (= (count bindings) 0)
  `(try ~code 
     (catch Throwable except# except#)) 

  `(let ~(subvec bindings 0 2)

     (try
       (safe ~(subvec bindings 2) ~@code)
       (catch Throwable except# except#) 

       (finally
         (. ~(bindings 0) close))))))) ;;safe



(def divider(safe (/ 1 0)))
(def reader (safe [s (FileReader. (java.io.File. "C:/text.txt"))] (. s read)))
Run Code Online (Sandbox Code Playgroud)

所以我得到的错误是

=> (def v (safe [s (FileReader. (java.io.File. "C:/text.txt"))] (. s read)))
#'myProject.core/v
=> v
#<ClassCastException java.lang.ClassCastException: …
Run Code Online (Sandbox Code Playgroud)

clojure classcastexception

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

为什么从这个析构函数和assignoperator中的指针中减去?

嗨我有一个测试tomarrow,无法弄清楚为什么在检查引用是否为0之前对指针进行减法.我一直在搜索谷歌,但仍然无法弄明白.所以我希望转向你们:)会有所帮助.最简单的只是向您展示代码,我已经用注释标记了行,所以这里是:

这是StringRep类,它有指向它的指针,用于计算指向它的pointerref,

struct StringRep{ 
 int size; // amount of chars incl. EOL \0-tecken 
 char* chars; // Pointer to char 
 int refCount; // Amount of String-variables
}; 
Run Code Online (Sandbox Code Playgroud)

这是使用StringRep的类String,

class String{ 
public: 
 String(char* str); 
 String(const String& other); 
 ~String(); 
 const String& operator=(const String& rhs); 

 char get(int index) const { return srep->chars[index]; } 
 void put(char ch, int index); 
private: 
 StringRep* srep; 
}; 

String::String(const String& other):srep(other.srep){ 
 srep->refCount++; 
} 

String::~String(){ 
 if (--srep->refCount == 0){  //why --srep here? 
 delete [] srep->chars; 
 delete srep; 
 } 
} 

const String& …
Run Code Online (Sandbox Code Playgroud)

c++ pointers destructor operator-overloading

0
推荐指数
1
解决办法
84
查看次数