在关注railstutorial.org之后我试图运行bundle install.它列出了宝石的使用方式:
Using railties (3.0.7)
Using rails (3.0.7)
Using sass (3.1.3)
Run Code Online (Sandbox Code Playgroud)
而这个错误:
Installing rbx-require-relative (0.0.5) /home/canard/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/site_ruby/1.9.1/rubygems/installer.rb:364:in `ensure_required_ruby_version_met': rbx-require-relative requires Ruby version ~> 1.8.7. (Gem::InstallError)
from /home/canard/.rvm/rubies/ruby-1.9.2-p180/lib/ruby/site_ruby/1.9.1/rubygems/installer.rb:135:in `install'
...
Run Code Online (Sandbox Code Playgroud)
我知道ruby 1.9.2需要rbx-require-relative,但为什么它不想安装它.它要求红宝石红宝石1.8.7.我很少迷路.
在此错误之后它停止了,我的Gemfile中的gem永远不会被读取或安装...
我正在使用ruby 1.9.2p180和rails 3.0.7
谢谢你的帮助
在用户从列表中选择带有时间的内容并在给定时间为其创建通知后,我尝试发出一些警报.我的问题是我的意图上的putExtra无法在广播接收器上收到的"showame".它总是得到空值.这是我对大部分意图的处理方式,但我想这次可能是因为pendingIntent或者broadcastReceiver需要不同的事情.谢谢
通过挂起的意图发送Intent的函数
public void setAlarm(String showname,String time) {
String[] hourminute=time.split(":");
String hour = hourminute[0];
String minute = hourminute[1];
Calendar rightNow = Calendar.getInstance();
rightNow.set(Calendar.HOUR_OF_DAY, Integer.parseInt(hour));
rightNow.set(Calendar.MINUTE, Integer.parseInt(minute));
rightNow.set(Calendar.SECOND, 0);
long t=rightNow.getTimeInMillis();
long t1=System.currentTimeMillis();
try {
Intent intent = new Intent(this, alarmreceiver.class);
Bundle c = new Bundle();
c.putString("showname", showname);//This is the value I want to pass
intent.putExtras(c);
PendingIntent pendingIntent = PendingIntent.getBroadcast(this, 12345, intent, 0);
AlarmManager alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE);
alarmManager.set(AlarmManager.RTC_WAKEUP, rightNow.getTimeInMillis(),pendingIntent);
//Log.e("ALARM", "time of millis: "+System.currentTimeMillis());
Toast.makeText(this, "Alarm set", Toast.LENGTH_LONG).show();
} catch …Run Code Online (Sandbox Code Playgroud) 我想我在过去的20个小时内尽我所能,但似乎没有任何效果.我的应用程序正在运行和工作 - 就像它应该 - 我唯一的问题是我无法.app从它创建一个包.我都尝试Py2App和cx_Freeze,但他们的非正常工作.由于多平台支持,我会坚持使用后者 - 如果可能的话.
该setup.py如下所示:
import sys
from cx_Freeze import setup, Executable
base = None
if sys.platform == 'win32':
base = 'Win32GUI'
OPTIONS = {'build_exe': {'includes': ['sip',
'PyQt5',
'PyQt5.QtCore',
'PyQt5.QtGui',
'PyQt5.QtWidgets',
'PyQt5.QtMultimediaWidgets',
'PyQt5.QtMultimedia',
'PyQt5.QtNetwork']}}
EXECUTABLES = [Executable('main.py', base=base)]
NAME = 'coublet'
VERSION = '0.5.70'
setup(name = NAME,
version = VERSION,
options = OPTIONS,
executables = EXECUTABLES)
Run Code Online (Sandbox Code Playgroud)
我有的错误信息是这样的:
objc[28404]: Class NotificationReceiver is implemented in both
/Users/.../build/coublet-0.5.70.app/Contents/MacOS/QtWidgets and
/usr/local/Cellar/qt5/5.3.1/lib/QtWidgets.framework/Versions/5/QtWidgets. One of …Run Code Online (Sandbox Code Playgroud) 我正在尝试将Bundles添加到现有的ASP.NET Webforms解决方案中,但我的bundle总是呈现为空,我不确定为什么.我一直关注这篇博文.
到目前为止,我有:
的Global.asax.cs
protected void Application_Start(object sender, EventArgs e)
{
BundleConfig.RegisterBundles(BundleTable.Bundles);
}
Run Code Online (Sandbox Code Playgroud)
App_Start/BundleConfig.cs
public class BundleConfig
{
// For more information on Bundling, visit http://go.microsoft.com/fwlink/?LinkID=303951
public static void RegisterBundles(BundleCollection bundles)
{
bundles.Add(new ScriptBundle("~/bundles/Global").Include(
"~/js/jquery-{version}.js",
"~/js/jquery-ui.js"));
bundles.Add(new ScriptBundle("~/bundles/GlobalHead").Include(
"~/js/modernizr*"));
bundles.Add(new StyleBundle("~/Content/Global").Include(
"~/css/site.css"));
}
}
Run Code Online (Sandbox Code Playgroud)
的Site.Master
<head runat="server">
<asp:PlaceHolder runat="server">
<%: Scripts.Render("~/bundle/GlobalHead") %>
<%: Styles.Render("~/Content/Global") %>
</asp:PlaceHolder>
</head>
<body>
<%: Scripts.Render("~/bundle/Global") %>
</body>
Run Code Online (Sandbox Code Playgroud)
Web.Config中
<namespaces>
<add namespace="System.Web.Optimization" /> …Run Code Online (Sandbox Code Playgroud) 编辑:Symfony最佳实践回答了我的大部分问题.
我有几个关于我的Symfony2应用程序的问题.
它将有一个前端和后端,并且它们将使用一些公共代码(例如日期显示器,分页器,经常使用的一些模板等).
所以,我创建了一个FrontendBundle和一个BackendBundle,每个都包含例如它们各自的布局.第一个问题:为前端和后端创建捆绑包是不是很好的做法,这些捆绑包是甚至没有控制器的"通用"捆绑包?
第二个问题:我在食谱上读到我不应该将我的布局放在捆绑包中,而是放在app/Resources/views /目录中.我已经有了一个base.html.twig文件,我想知道是否应该将我的布局放在那里,比如frontend_layout.html.twig文件?
我创建了一个名为RootBundle的包,它将包含我的应用程序在前端和后端需要的所有内容.这是一个好的做法吗?或者我应该为每个提议的功能创建一个专用的捆绑包,例如PaginatorBundle,DateDisplayerBundle等等?听起来很奇怪,我有一个"杂项"捆绑包含我不知道放在哪里的所有内容.你是怎样做的?
我可以savedInstanceState()在删除片段时使用保存状态,然后在从后端堆栈弹出片段时恢复状态吗?当我从后台堆栈恢复片段时,savedInstanceState包始终为null.
现在,app流程是:创建片段 - >删除片段(添加到后台堆栈) - >从后台堆栈恢复的片段(savedInstanceState bundle为null).
这是相关代码:
public void onActivityCreated(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Bundle bundle = getArguments();
Long playlistId = bundle.getLong(Constants.PLAYLIST_ID);
int playlistItemId = bundle.getInt(Constants.PLAYLISTITEM_ID);
if (savedInstanceState == null) {
selectedVideoNumber = playlistItemId;
} else {
selectedVideoNumber = savedInstanceState.getInt("SELECTED_VIDEO");
}
}
public void onSaveInstanceState(Bundle outState) {
super.onSaveInstanceState(outState);
outState.putInt(Constants.SELECTED_VIDEO, selectedVideoNumber);
}
Run Code Online (Sandbox Code Playgroud)
我认为问题是onSavedInstanceState()当被删除并被添加到后台堆栈时永远不会被调用.如果我不能使用onsavedInstanceState(),还有另一种方法来解决这个问题吗?
我试图从通知发送信息到被调用的活动,而从我的活动我得到null.
通知代码是:
private void showNotification() {
Intent resultIntent = new Intent(this, MainActivity.class);
if (D)
Log.d(TAG, "Id: " + Id);
resultIntent.putExtra("ineedid", deviceId);
TaskStackBuilder stackBuilder = TaskStackBuilder.create(this);
stackBuilder.addParentStack(MeterActivity.class);
stackBuilder.addNextIntent(resultIntent);
PendingIntent resultPendingIntent = stackBuilder.getPendingIntent(0,
PendingIntent.FLAG_UPDATE_CURRENT);
// Bundle tmp = resultIntent.getExtras();
// if (tmp == null) {
// Log.d(TAG, "tmp bundle is null");
// } else {
// long id = tmp.getLong("ineedid", -1);
// Log.d(TAG, "tmp id : " + id);
// }
NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(
BLEMessengerService.this)
.setSmallIcon(R.drawable.ic_action_search)
.setContentTitle("Event tracker")
.setContentText("Events received").setOngoing(true) …Run Code Online (Sandbox Code Playgroud) android bundle android-intent android-notifications android-pendingintent
我想将一个整数的新值从一个Activity传递给另一个Activity.即:
活动B包含一个
integer[] pics = { R.drawable.1, R.drawable.2, R.drawable.3}
Run Code Online (Sandbox Code Playgroud)
我希望活动A将新值传递给活动B:
integer[] pics = { R.drawable.a, R.drawable.b, R.drawable.c}
Run Code Online (Sandbox Code Playgroud)
以某种方式通过
private void startSwitcher() {
Intent myIntent = new Intent(A.this, B.class);
startActivity(myIntent);
}
Run Code Online (Sandbox Code Playgroud)
我可以设置这个整数值.
我知道这可以通过捆绑包以某种方式完成,但我不确定如何将这些值从活动A传递到活动B.
我正在使用安装了Oracle的Java 7的Mac OS X测试我当前的应用程序.而是使用Oracle的Java 7,它使用的是Apple的Java 6.的默认的系统输出java -version被示出7.
我尝试了不同网站中提到的大部分内容,但我无法解决此问题.
JAVA_HOME 也正确设置.
我仅将Mac用于测试目的.我真的需要一些指导.
当我通过选择JRE 7运行Eclipse时,它运行正常.因此,应用程序没有任何问题.我在Mac OS X上遗漏了一些东西.
我的Java系统环境如下所示:
OS X版本
10.8
/usr/libexec/java_home -V
Matching Java Virtual Machines (3):
1.7.0_12, x86_64: "Java SE 7" /Library/Java/JavaVirtualMachines/jdk1.7.0_12.jdk
1.6.0_37-b06-434, x86_64: "Java SE 6" /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
1.6.0_37-b06-434, i386: "Java SE 6" /System/Library/Java/JavaVirtualMachines/1.6.0.jdk/Contents/Home
/Library/Java/JavaVirtualMachines/jdk1.7.0_12.jdk/Contents/Home
Run Code Online (Sandbox Code Playgroud)/usr/libexec/java_home
/Library/Java/JavaVirtualMachines/jdk1.7.0_12.jdk/Contents/Home
Run Code Online (Sandbox Code Playgroud)echo $JAVA_HOME
/Library/Java/JavaVirtualMachines/jdk1.7.0_12.jdk/Contents/Home/
Run Code Online (Sandbox Code Playgroud)JAVA_ARCH 没有设定
/Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin/Contents/Home/bin/java -version
java version "1.7.0_12-ea"
Run Code Online (Sandbox Code Playgroud)ls /Library/Java/JavaVirtualMachines
jdk1.7.0_12.jdk
Run Code Online (Sandbox Code Playgroud)/System/Library/Frameworks/JavaVM.framework/Commands/java -version
java version "1.6.0_37"
Run Code Online (Sandbox Code Playgroud)我想我现在的JDK指的是错误的.