我有以下项目布局:
我正在设置A以便每次我想触发构建时,它将首先构建B,C和D.如果B,C或D的构建失败,那么A的构建也会失败.
这似乎是一个常见的构建案例,但我不知道如何实现它.有以下选项,但它们似乎没有正确的关系:
Hudson(或通过插件)中的构建配置对我有用吗?
我已经走上了使用Linux进行Blackberry开发的漫长道路.目前这意味着:
bb-ant-tools - 用于建筑
net_rim_api.jar - 以及Eclipse插件1.3.0中的其他Blackberry好东西
preverify - 从J2ME SDK或WTK,我忘了哪个
Retrotranslator - 用于将一些Java 5转换为J2ME
bjavaloader - 来自Barry,用于将应用程序推送到我的设备
我离开了很远的路,而且我已经放弃了Eclipse,因为我更喜欢vim.最后一块拼图是:
我也尝试过bjdwp,也来自Barry项目.我通过jdp连接时可以连接并查看一些控制台输出.但是,尝试使用jdp功能似乎失败了.在Eclipse中作为远程应用程序进行调试会导致以下错误:
在抛出'Barry :: Error'的实例后终止调用
what():Controller:不支持请求的模式
最好的方法是在Virtualbox中的Windows中设置jdwp并远程连接到Linux吗?
是否足以将[ System.Web.Configuration.HttpRuntimeSection.EnableHeaderChecking](http://msdn.microsoft.com/en-us/library/system.web.configuration.httpruntimesection.enableheaderchecking ( VS.85).aspx)设置为true(默认)以完全阻止Http标题注入攻击像响应拆分等?
我问,因为白盒渗透测试工具(强化)报告可利用的http头注入问题HttpResponse.Redirect和cookie但我还没有找到成功执行攻击的方法.(编辑:..我们已启用EnableHeaderChecking ..)
我正在开发Blackberry webworks,Phonegap框架,Apache Ant,并在Eclipse 3.6中使用示例index.html配置它们.
我按照文章开始使用PhoneGap BlackBerry WebWorks
但是在运行项目后我收到一条错误消息:
"项目'MyProject'上运行构建器'Faceted Project Validation Builder'的错误"
如何正确配置项目以支持跨平台?
所以我试图通过post-receive钩子来构建hudson.在我的本地git repo中,我将post-receive.sample设置为post-receive,chmod 755并添加到行中:
/usr/bin/curl -u user:secret http://localhost:8080/hudson/job/MyJob/build?token=secondsecret
Run Code Online (Sandbox Code Playgroud)
如果我强制构建,hudson会更新代码,但是这里是我不理解的,那个repo中的钩子没有像他们在本地那样的.sample,而且在hudson repo中的post-receive没有上面有那行代码.这里发生了什么以及如何将钩子集成到整个git进程中?我需要更改远程仓库上的这个钩子吗?我本以为在本地做这件事就足够了,所以任何从该回购中取出的人都会得到新的钩子.我无法理解另一个用户的repo将如何具有不同的钩子.
通常当我检查不同的分支或重置时,我会从一个到十几个文件的窗口中获得"权限被拒绝"错误 - 但是特定文件因运行而异.这是我刚刚做过的测试的输出,GIT_TRACE = 1.跟踪仅在错误消息之前添加了一行:
$ git checkout master trace: built-in: git 'checkout' 'master' error: git checkout-index: unable to create file dotnet/src/myfile.cs (Permission denied) D dotnet/src/myfile.cs Switched to branch "master"
我很确定这是在我的机器上使用病毒扫描程序或其他索引服务的比赛.如果竞争持续存在,我可以使用sysinternals来查看文件句柄打开的进程.但是,它发生得很快,我不知道有一个工具可以告诉我这个冲突.令人惊讶的是,我没有发现任何描述类似行为的人.如何使这些错误停止或进一步诊断问题?
我特别希望通过识别正在进行同步访问的进程来结束文件访问竞争. 因此,对于在拒绝编辑时显示哪个进程具有文件锁定的工具的建议将非常有用.我知道'解锁器'和类似的工具会告诉我哪个进程持有文件锁定一段时间.这不适用于此问题,因为该过程会在非常短的时间内锁定文件.所以该工具需要在没有我干预的情况下收集适当的数据,因为我太慢了.
我想在我的BlackBerry项目中添加一个jar文件.我尝试通过以下方式添加jar文件 - >
但在那之后,每当我尝试运行应用程序时,我都会收到"模块abc.jar未找到错误".
如何将jar文件添加到BlackBerry项目?
BB 10中是否有任何方法可以在手机启动时自动启动应用程序?如果是的话,是否有可能在进行后台处理(如cheking gps位置或wifi状态)时在后台进行重组?先感谢您.
这篇文章涉及最近一个软件项目中遇到的技术问题,并允许读者从问题的来之不易的解决方案中受益.
背景
在我的公司,我是内部库的实现者和维护者,它使用Boost asio("ASynchronous I/O")套接字框架来实现套接字上的跨平台数据传输.一位同事最近遇到了以下问题:如果Wi-Fi路由器在文件传输操作期间被毫不间断地关闭,她的Blackberry 10应用程序会链接并使用我的库,在几秒钟内崩溃.
在库中启用内置跟踪向我们展示了当库调用boost :: asio :: write(boost :: asio :: ip :: tcp :: socket*,boost :: asio :: buffer)时发生崩溃)函数与套接字不是'有效'(即套接字可能无法使用).在write()周围放置一个try/catch(boost :: system :: system_error)块无法捕获任何内容 - 崩溃显然发生在Boost中.
因为崩溃只发生在发布版本中,所以我们无法使用调试器.
技术信息
以下是编译器的典型命令行调用:
/home/foobar/bbndk/host_10_1_0_238/linux/x86/usr/bin/QCC
-Vgcc_ntoarmv7le
-lang-c++
-x c++
-DLINUX -DQNX -DSUPPORT_LAN -DUSE_SQLITE_FOR_DATABASE
-Wno-psabi -Wno-write-strings
-O3
-DNDEBUG
-fno-strict-aliasing
-fPIC
-I/home/foobar/Libraries/BlackBerry_10/boost_1.48/include
...
-I/home/foobar/Libraries/BlackBerry_10/utfcpp_1.0/include
-o CMakeFiles/Internals.dir/ConfigFileSingleton.cpp.o
-c /home/foobar/myproject_dev/myproject/SDK/Internals/ConfigFileSingleton.cpp
Run Code Online (Sandbox Code Playgroud)
用于查找问题源的步骤
我们编写了一个轻量级的最小应用程序,尝试用更少的代码重现问题,首先使用原始套接字,然后使用Boost的ASIO.如果崩溃发生,我们可以认为问题不是由我们的专有库引起的.不幸的是,崩溃是不可重复的,导致我们怀疑我们的库有错.
我们编写了一个轻量级跟踪框架,用于Boost的ASIO头文件,用于检测与问题相关的功能.框架在进入和退出这些函数时输出一个字符串,使我们也可以跟踪变量的值.
使用跟踪框架,我们能够证明发生了boost :: throw_exception崩溃()模板函数(非相关#ifdef'd代码中删除).当系统级写入操作在"损坏的管道"上失败时,Boost调用此函数:
template<class E> BOOST_ATTRIBUTE_NORETURN inline void throw_exception( E const & e )
{
//All …Run Code Online (Sandbox Code Playgroud)