小编Chr*_*ris的帖子

如何在Github上更改项目的许可证?

我在C中创建了一个简单的列表API,我想通过Github发布它.我还不确定选择哪个许可证,因为麻省理工学院和GPL似乎对我有好处.

有没有办法在创建存储库后更改许可证?

git api licensing github

118
推荐指数
1
解决办法
4万
查看次数

getActionBar()setDisplayHomeAsUpEnabled(真).在新活动创建时抛出NullPointerException(Google - Basic Tutorial)

我正在遵循本教程并在此代码块的DisplayMessageActivity的onCreate方法中获取NullPointerException:

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
// Show the Up button in the action bar.
getActionBar().setDisplayHomeAsUpEnabled(true); //Exception here
}
Run Code Online (Sandbox Code Playgroud)

我正在使用NexusOne AVD模板在模拟器上运行应用程序.
当我单击发送按钮并输入一些文本时,我得到了异常.

这是日志:

09-03 23:02:07.586: E/AndroidRuntime(7095): FATAL EXCEPTION: main
09-03 23:02:07.586: E/AndroidRuntime(7095): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.mypackage.myfirstapp/com.mypackage.myfirstapp.DisplayMessageActivity}: java.lang.NullPointerException
09-03 23:02:07.586: E/AndroidRuntime(7095):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2180)
09-03 23:02:07.586: E/AndroidRuntime(7095):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2230)
09-03 23:02:07.586: E/AndroidRuntime(7095):     at android.app.ActivityThread.access$600(ActivityThread.java:141)
09-03 23:02:07.586: E/AndroidRuntime(7095):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1234)
09-03 23:02:07.586: E/AndroidRuntime(7095):     at android.os.Handler.dispatchMessage(Handler.java:99)
09-03 23:02:07.586: E/AndroidRuntime(7095):     at android.os.Looper.loop(Looper.java:137)
09-03 23:02:07.586: E/AndroidRuntime(7095):     at android.app.ActivityThread.main(ActivityThread.java:5041)
09-03 23:02:07.586: E/AndroidRuntime(7095):     at …
Run Code Online (Sandbox Code Playgroud)

android nullpointerexception android-actionbar

20
推荐指数
3
解决办法
4万
查看次数

在不使用GET参数的情况下在@ViewScoped bean之间传递对象

我有一个browse.xhtml浏览列表的地方cars,我想在details.xhtml按下"查看更多"按钮时查看汽车的详细信息.他们的支持豆分别@ViewScoped被称为BrowseBeanDetailsBean.

现在,我不希望用户/客户端在URL中看到汽车ID,因此我想避免使用GET参数,如此此处所示.

有没有办法实现这个目标?我正在使用Mojarra 2.2.8和PrimeFaces 5以及OmniFaces 1.8.1.

jsf parameter-passing omnifaces view-scope jsf-2.2

16
推荐指数
1
解决办法
2万
查看次数

使用@EJB时,每个托管bean是否都有自己的@EJB实例?

我正在使用JSF 2.2进行Web项目,现在我正在实现登录页面.

我有一个login.xhtml作为视图,一个名为的支持bean UserLoginView.
这个bean有一个EJB属性豆private UserService userService(如图所示这里).

这是否意味着每个UserLoginView新实例都获得了一个新实例UserService

可以在生产环境中像这样实现吗?

jsf ejb java-ee jsf-2.2

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

使用Netbeans IDE 7.0.1 for C++,如何启用更多调试信息(即使用gdb的"-g3")

正如标题中所提到的,我正在使用NetBeans IDE 7.0.1 for C++(用于大学的作业).我使用的是gedit和终端,但我想尝试一下IDE.
我尝试过Eclipse,但我似乎更喜欢Netbeans界面.
(以上所有 - >使用我的笔记本电脑,运行Ubuntu 11.10).

好吧,我有一些问题,

  • 有没有办法用"分段故障""丰富""RUN FAILED(退出值1,总时间:470ms)"消息?(或者这是IDE如何工作,运行,如果你遇到"运行失败",请转到调试模式?)
  • 此外,在调试模式下,当我得到分段错误时,我得到一个新窗口,说"Signal Caught"然后这个:

    Signal received: SIGSEGV (?) with sigcode ? (?)
    From process: ?
    For program testing_netbeans, pid 15,211
    You may discard the signal or forward it and you may continue or pause the process
    To control which signals are caught or ignored use Debug->Dbx Configure
    
    Run Code Online (Sandbox Code Playgroud)

    有三个选项可用("放弃和暂停","放弃并继续","前进和继续").上述每个选项的作用是什么?

    如何获得发生错误的行?(在gdb的示例中,我将使用-g3选项进行编译,然后使用gdb运行.但是现在我怎么能默认执行此操作?

  • 我对eclipse的喜欢之处在于它在main函数的第一行有一个默认断点,默认情况下有没有办法做到这一点?

感谢您的时间!

c++ debugging netbeans

7
推荐指数
1
解决办法
2190
查看次数

将纹理添加到由顶点构成的平面

我使用以下代码在OpenGL上创建了一个平面:

glBegin(GL_TRIANGLE_STRIP);
glColor4f(0.8, 0.8, 0.5, 1.0);
glVertex3f(startlen, height, startwid);    
glVertex3f(startlen, height, startwid + width);
glVertex3f(startlen + length, height, startwid);
glVertex3f(startlen + length, height, startwid + width);
glEnd();
Run Code Online (Sandbox Code Playgroud)

现在我想在这个平面上应用纹理.

我在这里阅读了这个教程,但我已经停止了"在OpenGL中使用纹理"部分,因为我没有UV坐标.

我知道我们必须导入纹理文件,在我的例子中是一个位图文件.
加载器返回一个Glint,它是textureID,是全局的吗?在示例中,如果我需要加载该纹理,我只需要使用给定的ID调用绑定纹理函数?

无论如何,我怎样才能将纹理应用到平面上?


编辑#1: 现在发布的示例蚊子的纹理有效.
我发现的是我将纹理加载到类的构造函数中,我不应该因为该对象是公共的而且是在OpenGL初始化之前构造的.
所以纹理现在加载四个例子:)

现在的问题是我试图在我的飞机上使用它,它看起来很扭曲.对此的解决方案可能是将纹理加载多次,但保持原始大小(虽然我不知道如何做到这一点).

另外,我在当前的一个平面旁边创建了另一个带有奶油色的平面但是在纹理化之后它看起来像这样: 在此输入图像描述

所以现在有两个问题:

  • 纹理必须保持原始分辨率,但显示覆盖整个平面的次数
  • 它旁边的飞机失去了它的颜色(为什么会发生这种情况?如何解决它? - 我也可以使用这个平面的纹理)

编辑#2:

由于蚊子,第2个问题现在已经解决了!但是平铺仍然不起作用.这就是它现在的样子: 在此输入图像描述

这是我用过的纹理:
在此输入图像描述
它的尺寸是256x256(我用图像编辑器裁剪它)


编辑#3:
这些是glTexCoord2f坐标及其匹配的顶点(对于内边距):

glTexCoord2f(0.0f, 0.0f);   glVertex3f(startlen, height, startwid);
glTexCoord2f(0.0f, 1.0f);   glVertex3f(startlen, height, startwid - width/2);
glTexCoord2f(1.0f, 0.0f);   glVertex3f(startlen + length, height, startwid);
glTexCoord2f(1.0f, 1.0f);   glVertex3f(startlen + length, height, …
Run Code Online (Sandbox Code Playgroud)

c++ opengl textures

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

很难跟踪内存损坏 - 运行Valgrind时运行正常,没有错误

我们有一个复杂的程序,它在重载输入(实际上是任何输入)上运行良好,没有实现多线程.
我们已经实现了多线程与线程池,并给予这些输入参数,我得到这些结果:
(:如果我说没有任何错误,这意味着我已经测试了valgrind -v,当我说没有内存泄漏,这意味着我已经测试过它与valgrind --leak-check=full -v).

  1. small_file:成功运行超过1个worker(线程),没有valgrind错误,没有内存泄漏
  2. medium_file:使用1个worker成功运行,没有错误/内存泄漏.有> 1名工人,我得到:a.通常是堆损坏错误,b.双自由.valgrind -v与> 1个工作程序一起运行时,程序成功完成.此外,没有从valgrind打印错误,即ERROR SUMMARY: 0 errors from 0 contexts (suppressed: 2 from 2).

现在我从valgrind开始没有得到任何错误,我该怎么做才能找到这个复杂而庞大的应用程序中的内存损坏问题?

DevelopmentEnvironment:
Ubuntu,64bit,gcc版本:4.7.2和4.8.1(不同的计算机,更新版本的Ubuntu).

c multithreading valgrind memory-corruption

5
推荐指数
2
解决办法
5444
查看次数

为特定模块编写测试时如何使用绝对导入路径

我正在开发一个 NodeJS (v. 8.12.0, EcmaScript 6) 项目,其项目结构类似于:

project_root/
    src/
        utils/
            protocol_messages/
                helpers.js
    tests/
        unit/
            utils/
                protocol_messages/
                    helpers.js
Run Code Online (Sandbox Code Playgroud)

我正在使用 Mocha 作为测试框架编写测试。

问题
helpers.jsunder 中tests/unit/utils/protocol_messages/,导入被测模块的正确方法是什么?

详细说明:
我想避免使用相对路径:require('../../../../../src/utils/protocol_messages/helpers')
它有效,但很丑陋,如果项目结构发生变化,我也必须重写测试导入。

(我是 Javascript 的新手,所以我可能做错了几件事。)

更新此问题中
提供的解决方案:

  1. require.main.require:在对此答案的评论中,“如果代码包含像 Mocha 测试这样的单元测试,则此解决方案将不起作用”
  2. 将我的 utils 提取到节点模块对我来说没有意义,因为代码非常特定于应用程序。
  3. node_modulessrc/的 NodeJS 项目的项目根目录下有一个额外的东西似乎没有意义。
  4. 当我只使用 NodeJS 中可用的功能并编写 CommonJS 项目时,使用 Javascript 转译器似乎有点矫枉过正。

如果我在以上任何一点上有错误,请指出,因为我不知所措。在我看来,NodeJS 没有提供使用绝对路径导入 CommonJS 模块的本机方式。

mocha.js node.js ecmascript-6

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

MySQL,有什么方法可以使用多个别名?

假设我们有一个包含以下表格的数据库:
“艺术家”(列:名称,ID)和
“歌曲”(标题,composers_id,songwriters_id)。

我想用作曲家和作曲家的名字打印歌曲。我仅通过以下方式成功打印了作曲家的名字:

SELECT title, name AS Composers_Name 
  FROM artist, song 
    WHERE song.composers_id = artist.id;
Run Code Online (Sandbox Code Playgroud)

我无法获取歌曲作者的名字。
我尝试的是:

SELECT title, name AS Composers_Name, name AS Songwriters_name
  FROM artist, song 
    WHERE song.composers_id = artist.id AND song.songwriters_id = artist.id;
Run Code Online (Sandbox Code Playgroud)

但这会返回作曲家和作曲家是同一个人的所有歌曲。我正在考虑使用JOIN,但不确定如何。

mysql

3
推荐指数
1
解决办法
8633
查看次数

为什么允许使用memcpy使用指向它的指针覆盖const变量?

为什么允许使用memcpy指向它的指针更改const变量?

这段代码:

const int i=5;
int j = 0;
memcpy(&j, &i, sizeof(int));
printf("Source: i = %d, dest: j = %d\n", i,j);

j = 100;
memcpy(&i, &j, sizeof(int));
printf("Source: j = %d, dest: i = %d\n", j,i);
return 0;
Run Code Online (Sandbox Code Playgroud)

编译只是一个警告:

警告:传递'memcpy'的参数1从指针目标类型中丢弃'const'限定符[默认启用]

但确实运行得很好,并改变了const变量的值.

c const memcpy

3
推荐指数
2
解决办法
2577
查看次数