我有一个项目运行简单的构建工具作为构建工具.我的所有子项目都共享相同的依赖项,所以我希望它们使用相同的lib文件夹.我可以通过创建到我的共享lib文件夹的符号链接来实现,但我希望在sbt中找到一个配置,让我可以更改为我的库的路径.
override def dependencyPath = ".." / "lib"
Run Code Online (Sandbox Code Playgroud)
不起作用,路径中不允许".."
class Top(info:ProjectInfo) extends ParentProject(info){
lazy val subproject = project("sub","Sub Project",info => SubProject(info,dependencyPath)
class SubProject extends DefaultProject(info:ProjectInfo,libdir:Path){
override def dependencyPath = libdir
}
}
Run Code Online (Sandbox Code Playgroud)
不起作用,dependencyPath是项目的相对路径
dependencyPath.absolutePath
Run Code Online (Sandbox Code Playgroud)
也不起作用,因为absolutePath创建一个带斜杠的String,并且可能无法从带有斜杠的字符串创建路径.
记录依赖属性的最佳方法是什么?
我应该在字段上放置xml文档:
/// <summary>Documentation goes here</summary>
public static readonly DependencyProperty NameProperty =
DependencyProperty.Register(...)
Run Code Online (Sandbox Code Playgroud)
或在酒店:
/// <summary>and/or here?</summary>
public string Name{ get{...} set{...} }
Run Code Online (Sandbox Code Playgroud)
还是我真的需要记录(和维护)两者?
sandcastle silverlight wpf dependency-properties xml-documentation
通过sqlcmd执行以下脚本失败.但是,通过ssmo或SQL Server Management Studio执行它可以正常工作.
sqlcmd -S . -d test -i input.sql
Run Code Online (Sandbox Code Playgroud)
input.sql:
CREATE FUNCTION test()
RETURNS @t TABLE ("ID" INT)
AS
BEGIN
RETURN
END
Run Code Online (Sandbox Code Playgroud)
即使我将SQL Server Management Studio置于sqlcmd模式,它仍然会失败.这是一个问题,因为我们使用SSMS测试脚本,但使用SQLCMD进行部署.因此,我们只发现当我们尝试部署时,我们的代码不起作用.
为什么sqlcmd的行为如此?有没有办法把它关掉?
我目前的项目是使用NHibernate 3.0b1和NHibernate.Linq.Query<T>()API.我对LINQ非常流利,但我对HQL或ICriteria API没有任何经验.IQueryable API不支持我的一个查询,因此我认为我需要使用以前的API之一 - 但我不知道从哪里开始.
我已经尝试在网上搜索ICriteria的一个很好的"入门"指南,但我发现的唯一例子要么太简单了,要么在这里申请,要么太高级我无法理解.如果有人有一些好的学习材料可以传递,我们将不胜感激.
在任何情况下,我要查询的对象模型看起来像这样(大大简化,省略了非相关属性):
class Ticket {
IEnumerable<TicketAction> Actions { get; set; }
}
abstract class TicketAction {
Person TakenBy { get; set; }
DateTime Timestamp { get; set; }
}
class CreateAction : TicketAction {}
class Person {
string Name { get; set; }
}
Run Code Online (Sandbox Code Playgroud)
A Ticket有一个TicketAction描述其历史的集合.TicketAction亚型包括CreateAction,ReassignAction,CloseAction等所有的门票已经一CreateAction创建时添加到此集合.
此LINQ查询正在搜索具有给定名称的人创建的票证.
var createdByName = "john".ToUpper();
var tickets = _session.Query<Ticket>()
.Where(t => t.Actions
.OfType<CreateAction>() …Run Code Online (Sandbox Code Playgroud) 我将二维数组作为属性传递给我的用户控件.在那里我将这些值存储在另一个二维数组中:
int[,] originalValues = this.Metrics;
Run Code Online (Sandbox Code Playgroud)
后来,我改变了值this.Metrics.但是现在如果我从originalValues中检索值,我会从中获取更改的值this.Metrics.如何制作元素的副本,this.Metrics而不仅仅是获取数组的引用?
对于Android,有一个java yaml库和snakeyaml一样好吗?(或者是否有人在Android上成功使用snakeyaml?)
我知道我可以这样做:
#define MACRO(api, ...) \
bool ret = api(123, ##__VA_ARGS__);
Run Code Online (Sandbox Code Playgroud)
这只是一个例子,它是更复杂的解决方案的一部分.关键是我需要将可变数量的参数附加到第一个123. ##使编译器在123参数之后删除逗号,如果没有参数传递给MACRO.
但现在我想向api附加参数,如下:
#define MACRO(api, ...) \
bool ret = api(__VA_ARGS__##, 456);
Run Code Online (Sandbox Code Playgroud)
诺坎多.一种解决方案是使用两个宏,MACRO和MACRO_V,并使_V版本不处理任何参数.但有没有办法让它与一个宏一起工作?
我正在使用libgen.h中的dirname从文件名的路径获取目录路径.
这是它的签名:
char * dirname (char *path)
Run Code Online (Sandbox Code Playgroud)
在32位机器上编译或使用-m32与gcc编译时,一切正常.
我的代码看起来像这样:
char* path = "/path/to/my/file.txt";
char* path_cpy = strdup(path);
const char* dir = (const char*)dirname(path_cpy);
Run Code Online (Sandbox Code Playgroud)
如果我在64位机器上编译,我会收到警告:
"warning: cast to pointer from integer of different size"
Run Code Online (Sandbox Code Playgroud)
这将修复警告,但在运行时崩溃:
const char* dir = (const char*)(uintptr_t)dirname(path_cpy);
Run Code Online (Sandbox Code Playgroud)
我之前从未尝试过编译32/64位,有没有办法解决这个问题?
在创建新对象时,我在before_save上收到ActiveRecord :: RecordNotSaved错误.
但我想获取除ActiveRecord :: RecordNotSaved错误消息之外的正确消息.
我如何获取正确的错误消息并将其传递给救援人员?
begin
#some logic
raise unless object.save!
rescue ActiveRecord::RecordNotSaved => e
# How may fetch proper message where my object is failing here ..
# like object.errors.message or something like that.
end
Run Code Online (Sandbox Code Playgroud) 我正在尝试上传到我构建的投资组合应用程序,特别是试图找到将 delay_job 挂接到流程中的位置。否则一切正常。现在它返回undefined method 'call' for #<Class:0xae68750>了app/controllers/portfolio_items_controller.rb:18:in 'create'所以这是我的模型和控制器的那部分......有人看到任何可能出错的地方吗?我现在使用的钩子来自这个博客:http : //madeofcode.com/posts/42-paperclip-s3-delayed-job-in-rails
/app/controllers/portfolio_items_controller.rb
def create
@portfolio_item = PortfolioItem.new(params[:portfolio_item])
if @portfolio_item.save
flash[:notice] = "Portfolio item created. As soon as files are uploaded Portfolio item will be made live."
redirect_to @portfolio_item
else
render :action => 'new'
end
end
Run Code Online (Sandbox Code Playgroud)
/app/models/asset.rb
class Asset < ActiveRecord::Base
attr_accessible :image, :image_file_name, :image_content_type, :image_file_size, :portfolio_item_id, :order
belongs_to :portfolio_item
has_attached_file :image,
:styles => {
:thumb => "20x20#",
:small => "100x100",
:large => "600x600>"
},
:storage => …Run Code Online (Sandbox Code Playgroud) c ×2
gcc ×2
.net ×1
64-bit ×1
amazon-s3 ×1
android ×1
c# ×1
delayed-job ×1
dirname ×1
java ×1
nhibernate ×1
paperclip ×1
ruby ×1
sandcastle ×1
sbt ×1
scala ×1
silverlight ×1
sql-server ×1
sqlcmd ×1
t-sql ×1
unix ×1
wpf ×1
yaml ×1