小编obe*_*ies的帖子

如何使用本地目录作为Tycho构建的目标平台?

我想用目标平台构建一个RCP-Application,这是一个Maven/Tycho目录.
现在我遇到了一些无法解决依赖关系的麻烦.

Internal error: java.lang.RuntimeException: "No solution found because the  
problem is unsatisfiable.": ["Unable to satisfy dependency from  
de.test.prototype.main 1.0.0.qualifier to bundle org.eclipse.ui 0.0.0.",  
"Unable to satisfy dependency from de.test.prototype.main 1.0.0.qualifier  
to bundle org.eclipse.core.runtime 0.0.0.", ...
Run Code Online (Sandbox Code Playgroud)

总而言之,有几个依赖性解决问题,所以我认为Tycho不能使用我的目标平台.
我阅读了http://wiki.eclipse.org/Tycho/Target_Platform,其中有以下注释:

不支持位置类型"目录","安装"和"功能"."

所以我的问题是:我如何让Tycho使用我的目标平台,虽然它是一个目录?

eclipse-rcp tycho maven

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

用于在Node上使用Selenium的WebDriverJs截取屏幕截图的正确语法

使用Selenium的webdriverjs运行webdriver测试时,截取屏幕截图的正确方法是什么?

我已经启动了独立的selenium服务器,我可以看到在selenium-server上记录了获取屏幕截图的命令,但屏幕截图没有被保存.

我的代码如下:

var webdriver = require('selenium-webdriver');
var driver = new webdriver.Builder().usingServer('http://localURL:4444/wd/hub').withCapabilities({'browserName': 'chrome'}).build();
driver.get([URL to webserver on my local machine])

driver.takeScreenshot("c:\\selenium_local_map\\out1.png");
Run Code Online (Sandbox Code Playgroud)

javascript selenium node.js webpage-screenshot selenium-webdriver

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

如何防止Cygwin上的git设置core.filemode = true

我在Windows PC上使用Cygwin安装的git.尽管cygwin支持NTFS文件系统上的Unix权限位,但像Eclipse这样的本机Windows程序并不了解它们,因此Windows程序创建的所有文件都具有可执行位set(755).

我很少需要签入一个可执行位设置到Git存储库的文件.因此,我想core.filemode=false默认拥有.我将在我的全局配置此值,但不幸的是这通常是没有任何效果:作为记录,git clone将探测文件系统,看看它是否支持权限,并设置core.filemode相应的每个存储库,因此,我有一个core.filemode=true在每一个存储库配置的配置,覆盖我的所需的默认值

有没有办法防止自动git clone设置core.filemode

git cygwin

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

阻止maven检查更新

每次从Eclipse开始调试项目时,如何阻止maven检查更新?我希望这是有道理的,因为我不太熟悉java开发环境.

只是每次我开始调试时,它都会检查依赖库的快照更新.这在慢速的互联网连接上变得烦人.

eclipse maven

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

用于在Eclipse中匹配"非javadoc"注释的正则表达式

我正在尝试编写一个与(non-javadoc)格式中的注释匹配的正则表达式

/*
 * (non-javadoc)
 *
 * some other comment here
 *
 */
Run Code Online (Sandbox Code Playgroud)

到目前为止,我有(?s)/\*\R.*?non-Javadoc.*?\*/,但实际上匹配太多了.我的文件顶部有一个标题,类似于

/*
 * header text
 */
 public class MyClass {

 }
Run Code Online (Sandbox Code Playgroud)

它匹配/*文件顶部,但我真的只想匹配生成的(non-javadoc)注释.任何人都可以帮我修复这个正则表达式吗?

编辑:我正在尝试使用Eclipse查找/替换对话框,但如果需要,我愿意使用外部工具.

regex eclipse replace javadoc multiline

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

ProcessBuilder为命令行添加了额外的引号

我需要使用ProcessBuilder构建以下命令:

"C:\Program Files\USBDeview\USBDeview.exe" /enable "My USB Device"
Run Code Online (Sandbox Code Playgroud)

我尝试使用以下代码:

ArrayList<String> test = new ArrayList<String>();
test.add("\"C:\\Program Files\\USBDeview\\USBDeview.exe\"");
test.add("/enable \"My USB Device\"");  

ProcessBuilder processBuilder = new ProcessBuilder(test);                       
processBuilder.start().waitFor();   
Run Code Online (Sandbox Code Playgroud)

但是,这会将以下内容传递给系统(使用Sysinternals Process Monitor进行验证)

"C:\Program Files\USBDeview\USBDeview.exe" "/enable "My USB Device""
Run Code Online (Sandbox Code Playgroud)

请注意之前的引用/enable和之后的两个引号Device.我需要摆脱那些额外的引号,因为它们使调用失败.有谁知道如何做到这一点?

java windows process processbuilder

10
推荐指数
3
解决办法
9495
查看次数

如何让Firefox在同一个窗口中打开通过WebDriver打开的所有链接?

我想在新窗口中打开同一窗口中的所有链接.我试过了

profile.setPreference("browser.link.open_newwindow", 1)
Run Code Online (Sandbox Code Playgroud)

但结果是:

WARNING: traffic.loop 0 error: Preference browser.link.open_external may not be overridden: frozen value=2, requested value=1
Run Code Online (Sandbox Code Playgroud)

还有另一种方法可以在同一个窗口中打开链接吗?

firefox webdriver selenium-firefoxdriver selenium-webdriver

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

Maven NatTable清理+安装失败

我正在尝试导入和解析NatTable项目的开发人员项目,如他们的入门教程中所述.

我收到以下错误mvn -f [path to pom] clean install:

线程"main"中的异常java.lang.NoSuchMethodError:org.apache.maven.execution.MavenSession.getRepositorySession()Lorg/sonatype/aether/RepositorySystemSession;

更多细节:

  • mvn --version 工作良好
  • %MAVEN_HOME% 指向[devel] /maven-3.1.0

java eclipse tycho maven nattable

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

Tycho和Eclipse:如何在Eclipse中的开发时将OSGI依赖关系解析为我自己的bundle,而无需在IDE中打开所有这些依赖关系

背景

我的Eclipse RCP应用程序是使用Tycho构建的.它由多个组件组成(以OSGi包/ Eclipse插件的形式).其中一个组件包含产品文件并实现产品.

应用程序根目录下有一个reactor POM,它按顺序构建所有组件,但我也想独立构建其他组件(使用mvn deploy).

构建这样的单个组件的工作原理如下:

  1. 从我们公司(p2)存储库中检索所有组件依赖项的最新版本.
  2. 构建组件.
  3. 将组件部署到我们的公司存储库,以用作其他组件本身的依赖项.

注意:我们的存储库是托管在Nexus上的普通maven2存储库,其RCP工件也自动映射到p2存储库格式.这样,Tycho可以使用p2存储库格式来查找依赖项,而可以使用标准的Maven部署.这很好用.

注意:我的父POM确保我们在p2存储库URL中查找依赖项.部署URL是存储库的默认maven2格式位置.这很好用.

问题

当通过命令行(mvn deploy)构建这样的单个组件时,Maven 在p2存储库中查找项目内依赖项并正确解析它们(即最新版本会自动下载并在构建中使用).

但是,在Eclipse中进行开发时,IDE无法解析它们.清单文件在我的每个项目内依赖项中都会出现错误,导致无法解析这些错误.

我的问题是:如何让Eclipse IDE在以下任何一个中查找依赖项(以及新版本的依赖项):

  • 我的本地p2存储库(~/.m2/repository/p2/osgi/bundles)
  • 我的公司p2仓库(nexus.mycompany.com/myproduct-snapshots/.meta/p2)

理想情况下,如果有更新版本,它每次都会查找它们并获取最新版本.

如果它不使用POM中的p2存储库URL,我应该如何配置Eclipse?

考虑一个eclipse插件com.mycompany.myproduct.fancy,它依赖于另一个eclipse插件com.mycompany.myproduct.core.

两者都有一个POM(配置为Tycho使用),它(通过其父POM)正确配置了我的Nexus存储库:部署的maven2存储库URL和查找依赖关系的p2存储库URL.

首先,我将core插件部署到我的maven存储库(使用默认值mvn deploy).Nexus存储库将以maven和p2格式提供此部署的插件.

当我fancy通过命令行(使用mvn install)构建组件时,会自动找到并下载(先前部署的)核心组件.

project/com.mycompany.myproduct.fancy$ mvn clean install
<searches in p2 repository, download core>
<builds fancy>
<SUCCESS>
Run Code Online (Sandbox Code Playgroud)

当我打开一个新的Eclipse工作区并打开该fancy组件时,其Manifest(包含其依赖项)会出现以下错误:

Bundle 'com.mycompany.myproduct.core' cannot be resolved.
Run Code Online (Sandbox Code Playgroud)

我的问题是:如何fancy在Eclipse …

eclipse osgi eclipse-rcp tycho maven

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

限制Java包之间的依赖关系

在Java构建系统中对包依赖性实施限制的可能性有哪些?例如,myapp.server.bl.Customer不应该允许类引用myapp.client.ui.customlayout包.我对基于Ant或IDE的解决方案感兴趣.

我想在构建中收到一条错误消息,指出违反了(自定义)程序包依赖关系规则并且构建已中止.我还想在Ant脚本或IDE项目文件之外的列表中维护依赖项,最好是在文本文件中.

(我不知道Maven,但我在这里读到它对模块依赖管理有更好的支持)

java build-process dependency-management

9
推荐指数
2
解决办法
2220
查看次数