我在IntelliJ中使用contrib 1.1运行Clojure 1.3.我的程序由一行组成
(use 'clojure.contrib.prxml)
Run Code Online (Sandbox Code Playgroud)
运行时出现以下错误
Exception in thread "main" java.lang.RuntimeException: java.lang.NoSuchMethodError: clojure.lang.RestFn.<init>(I)V
Run Code Online (Sandbox Code Playgroud) 我正在尝试决定是否使用James(http://james.apache.org/)或Javamail(http://java.sun.com/products/javamail/)来构建一个接收和处理电子邮件的电子邮件系统.它将发送和接收电子邮件以及处理内容,检查垃圾邮件等.每个的优点/缺点是什么,你建议我应该使用哪些.它必须与Java或Clojure兼容.
请随意为我未在此处提及的Java/Clojure兼容的电子邮件系统提供案例.
我想编写一个连接向量或矩阵的函数,它可以接受任意输入.为了组合两个向量,我编写了以下代码.它还可以组合矩阵,以便延长列.
(defn concats
([x y] (vec (concat x y))))
Run Code Online (Sandbox Code Playgroud)
我被卡住的地方是将输入扩展到n个向量或矩阵,并组合矩阵以产生更长的行.
例)(某些函数[[:a:b] [:c:d]] [[1 2] [3 4]] 2]
[[:a :b 1 2] [:c :d 3 4]]
Run Code Online (Sandbox Code Playgroud)
输入中的2指定级别以进行连接.
输入一个向量我想写一个函数,给出元素之间的连续差异.理想情况下,函数应输入向量x和指定第n个差异的参数n.
样本[xn]
输入1:[16 10 8 6 4 2] 1(第一个差异为1)
输出1:[ - 6 -2 -2 -2 -2]
输入2:[16 10 8 6 4 2] 2
输出2:[4 0 0 0 nil nil]
象征性地,这里是样本2的内容(意思是说明,而不是Clojure代码)
[abcdef] 2
[a-2b + c,b-2c + d,c-2d + e,d-2e + f]
我看下面的例子 Clojure.java.jdbc
(sql/db-do-prepared db "INSERT INTO fruit2 ( name, appearance, cost, grade ) VALUES ( ?, ?, ?, ? )" ["test" "test" 1 1.0])
Run Code Online (Sandbox Code Playgroud)
但是我如何将以下 java代码转换为clojure.我是新手clojure,不知道如何通过多次vector
final int numRows = 10000;
PreparedStatement pstmt = conn
.prepareStatement("insert into new_order values (?, ?, ?)");
for (int id = 1; id <= numRows; id++) {
pstmt.setInt(1, id % 98);
pstmt.setInt(2, id % 98);
pstmt.setInt(3, id);
int count;
if ((count = pstmt.executeUpdate()) != 1) {
System.err.println("unexpected update count …Run Code Online (Sandbox Code Playgroud) Clojure中是否有函数,它模拟Mathemaica函数播种/收获?母猪和母猪的主要用途是收集在评估过程中产生的表达.
例)
在Mathematica中输入:收获[Sow [w = 2]; w + = Sow [w ^ 3]; w = Sqrt [w + w ^ 3]]
输出:{Sqrt [1010],{{2,8}}}
给出中间结果2和8.
在Clojure函数中耦合多个正则表达式的最佳方法是什么?我相信这个函数会这样开始:
(defn foo [x]
(re-seq #"some means to combine multiple regex")
Run Code Online (Sandbox Code Playgroud)
但我不清楚这是否有效,或这种功能的效率.为了提供可能的正则表达式耦合的示例,可以考虑搜索域名和IP的函数.对于域名,我会使用正则表达式:
(re-seq #"\b([a-zA-Z0-9]([a-zA-Z0-9\-]{0,61}[a-zA-Z0-9])?\.)+[a-zA-Z]{2,6}\b" x)
Run Code Online (Sandbox Code Playgroud)
对于IP:
(re-seq #"\b(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\.){3}(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\b")
Run Code Online (Sandbox Code Playgroud) 我希望捕获的日期格式属于"word/DD/YYYY"模式的排列,其中单词对应于月份,即
(def months ["january" "January" "february" "February" "march" "March" "April" "april" "may" "May" "june" "June" "july" "July" "august" "August" "september" "September" "october" "October" "november" "November" "december" "December"])
Run Code Online (Sandbox Code Playgroud)
因此,上述模式的可能排列将是"DD/word/YYYY""YYYY/word/DD"和"YYYY/DD/word"
我尝试了一些方法
(def months-match (clojure.string/join "|" months))
(def months-str (str "(\\s*(" months-match ")"))
(def moster (re-pattern months-str))
(defn foomonths [s]
(map first (re-seq moster s)))
Run Code Online (Sandbox Code Playgroud)
计划在几天和几年内添加正则表达式
|[- /.](0[1-9]|[12][0-9]|3[01])[- /.](19|20)\d\d
Run Code Online (Sandbox Code Playgroud)
置换正则表达式不是问题.相反,它是将数月的单词制定成正则表达式结构的过程,其中日期和年份以数字表示.
我有Eclipse的CounterClockwise,并且相信应该安装clojure.contrib.但是,我似乎无法使用它或任何子文件,如clojure.contrib.string.如果我键入,我会收到以下错误
如果我输入(require'clojure-contrib.string),我得到:
FileNotFoundException无法在类路径上找到clojure_contrib/string__init.class或clojure_contrib/string.clj:clojure.lang.RT.load(RT.java:443)
我为随机游走编写了以下代码,它从{-1,1}中提取随机值.
(defn notahappyfoo [n]
(reverse (butlast (butlast (reverse (interleave (take n (iterate rand (- 0 1)))(take n (iterate rand 1))))))))
Run Code Online (Sandbox Code Playgroud)
但是,代码无法产生令人满意的行走.主要问题源于函数rand.它的下限是0,这迫使我写的尴尬代码.也就是说,函数交错最终导致步行中的狂变,因为值被迫从正变为负.使用此代码很难获得任何连续路径的感觉.
我相信在Clojure中应该有一个优雅的形式来构建这个步行.但我无法将正确的功能拼凑在一起以产生这样的行走.我想要构建的函数的目标包括随机数的下限和上限.在上面的代码中,我强制将区间-1设置为1.将此概括为-a和a将是很好的.此外,如何在-a和具有连续性概念的a之间形成随机实数(浮点)的集合?
我有通过 clojure 创建的文件
frontendapp.jar
backendapp.jar
Run Code Online (Sandbox Code Playgroud)
并取一个环境变量, APP_PORT
我想了解的是如何将变量传递给 jar 文件,以便它们与变量 APP_PORT 一起运行?
我的假设是这样的
java -jar frontenapp.jar APP_PORT=8080
Run Code Online (Sandbox Code Playgroud)
我的假设正确吗?
如果问题不好,我很抱歉,这是我第一次部署 clojure 应用程序
java clojure clojure-contrib clojure-java-interop clojurescript