小编use*_*022的帖子

如何使用Gradle在单个任务中多次执行JavaExec?

我有一个运行简单JavaExec的任务.

我似乎无法工作的是能够在迭代Filetree对象(包含文件)的同时多次运行JavaExec,同时我想逐个传递到主JavaExec类.不幸的是,编译器或代码生成工具并不接受将目录作为arg,因此我需要将该文件作为每个循环的arg传递.这就是我所拥有的:

task generateClasses(type: JavaExec) {
   description = 'Generates Json Classes...'
   classpath configurations.all
   main = "org.apache.gora.compiler.Compiler"
   FileTree tree = fileTree(dir: 'src/main')
   tree.include '**/*.json'
       tree.each {File file ->
       println file
       args = [ "src/main/json/$file.name", "$buildDir/generated-src/src/main/java" ]
   }    
Run Code Online (Sandbox Code Playgroud)

}

compileJava.source generateClasses.outputs.files,sourceSets.main.java

从上面它可以工作,我列出了所有文件,但JavaExec只在最后一个文件读取时被调用.

我如何解决上述问题?请帮忙.

gradle

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

在两个webapps之间共享Ehcache

我有2个webapps,一个管理员webapp,以及实际的应用程序webapp本身.两者共享对mysql存储的访问权限,而Ehcache用于缓存用户详细信息,以防止用户按REST API请求查找后端.

我的问题是可以使用管理员应用程序(很少我会添加)来更新用户凭据,让我们说密码或用户名,或更改一些授权级别等.现在,当发生这种情况时,我需要用户缓存无效或清除,以便主用户可以在用户查找时访问数据库,以便将新用户详细信息放入缓存中.

目前正在发生这种情况,但主客户端webapp无法清除缓存.

如何在两个webapps之间共享一个ehcache(在jetty或tomcat中托管)?我目前正在使用Jetty,但计划切换到Tomcat.

我正在使用Spring 3,Jersey,Hibernate,MySQL和Google Ehcache注释.

谢谢你的帮助.

rest tomcat web-applications ehcache jersey

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

结合弹簧安全3和球衣休息api

我有一个场景,我试图将spring security和jersey结合起来用于我的REST API.

我的需求相当复杂(我认为),具体如下:

Spring安全性用于拦截URL并强制进行基本身份验证以访问REST资源.这似乎没问题,因为我正在使用http客户端来测试它.

但是,我想要做的是以某种方式访问​​加载的User对象,以检查挂起用户的一些其他权限(带有布尔标志的地图对象,以指示对象属性是否可见).执行加载的代码有效,但是在Spring验证后如何在实际的REST Resource方法本身中访问User对象?这可能吗?

所以步骤是:

1)客户端进行REST API调用2)Spring拦截URL检查http头中提供的用户名和密码3)如果存在有效凭证,则访问其余资源方法

但在第3步之前,我想以某种方式将加载的User对象传递给实际的Resource方法本身,这样我可以进一步应用一些逻辑来限制用户可以根据我加载的权限看到的内容??? 这可能吗?我想在使用Spring和REST访问方法之前,我已经看到某些代码检查用户角色,但是如果有人有任何链接或想法非常好.

如果可以的话请帮忙.非常感谢.

rest jersey spring-security

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

Kafka多个分区排序

我知道无法在Kafka中订购多个分区,并且只能为组内的单个使用者(对于单个分区)保证分区排序.然而,使用Kafka Streams 0.10现在可以实现这一目标吗?如果我们使用时间戳功能,以便每个分区中的每条消息都维护订单,那么在消费者方面,让我们说Kafka Streams 0.10现在可以吗?假设我们收到所有消息,我们可能不会根据消耗的时间戳对所有分区进行排序,并可能将它们转发到单独的主题以供消费?

目前我需要维护订购,但这意味着拥有一个带有单个消费者线程的分区.我想将其更改为多个分区以增加并行性,但不知何故"让它们按顺序排列".

有什么想法吗?谢谢.

apache-kafka kafka-consumer-api kafka-producer-api apache-kafka-streams

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

如何使用正确的rpm名称将生成的Maven RPM工件安装到本地m2存储库中?

因此,我可以按预期使用maven RPM插件成功生成RPM工件。

我在pom.xml(打包为pom)中使用了Attached-rpm目标,以便RPM插件将工件安装到本地m2存储库中(因为它已绑定到打包阶段)。

问题:RPM生成的名称很好,如下所示:code-module-1.0.3-SNAPSHOT20120727095507.amd64.rpm

但是,当maven将其安装到我的本地仓库中时,我最终得到:

代码模块-rpm-1.0.3-SNAPSHOT-rpm.rpm

我丢失了全名,即RPM的体系结构部分,相反,Maven在.rpm扩展名(我尚未定义的分类器)之前将rpm附加到名称的末尾,并使用了pom工件ID作为rpm名称。 rpm名称本身。

我尝试使用build-helper插件指向目标目录中生成的RPM,但这不能工作,因为rpm名称是动态生成的,并且build-helper插件仅接受完整的文件名,不包含通配符等。

我不想更改工件的最终名称,因为这将打破Maven约定。

这是Maven的输出:

[INFO] Installing /home/xzcx/Development/repository/svn/source/parent-project    
/code-module-rpm/target/rpm/code-module/RPMS/amd64/code-module-1.0.3-
SNAPSHOT20120727145507.amd64.rpm to  
/home/xzcx/.m2/repository/com/xpackage/ypackage/codepackage/code-module-rpm/1.0.3-
SNAPSHOT/code-module-rpm-1.0.3-SNAPSHOT-rpm.rpm
Run Code Online (Sandbox Code Playgroud)

有什么想法吗?

更新:我注意到RPM插件网站指出,使用attach :: RPM目标将允许您构建具有不同架构等的多个RPM,但是根据上述情况,唯一可行的方法是使用分类器作为RPM名称的arch位不会保留到本地存储库中的安装中。

rpm maven

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