设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13295|回复: 1

[求助] 总是出现swarm.SignatureNotFoundException错误

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
  _8 T3 g- @4 B5 j; [0 L- C! B2 y# D2 I4 o) O& c+ ]
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
' }9 A- p  q0 I以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
) _; q# n: t! B5 W/ Bswarm.SignatureNotFoundException+ {7 ]7 C1 [- O7 A
        at swarm.Selector.<init>(Selector.java:76)
/ {9 C1 L( F4 e' \# a4 ~        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)* F5 t+ u& J2 f9 b, z
        at ActionGroupDemo.main(ActionGroupDemo.java:67)2 b, R: f" ~5 P' r! q% q$ {

' P, o0 c( c5 D+ X
: v1 \4 b) V. wimport swarm.objectbase.SwarmImpl;
* f9 d& B$ X4 J. w, [0 D6 Vimport swarm.objectbase.Swarm;: N% \) y  A2 n" a& Q" r
import swarm.activity.ScheduleImpl;
- o: n' n, e$ |8 Z5 N$ J3 {import swarm.activity.Activity;! k8 S- t$ B& N; q8 ?$ S1 y+ ~. d4 H
import swarm.activity.ActionGroupImpl;
& k& o5 j+ `0 l0 c" \import swarm.collections.ListImpl;
- W8 H; j) m  l8 M  Z  {+ `import swarm.defobj.Zone; / {  v0 G8 u3 G( R
import swarm.Globals;' K$ v$ U+ g% E: b
import swarm.Selector;* p3 N- T5 i- a
import swarm.activity.ActionGroup; 0 T( H8 q  x5 _, @
class Agent {
! S% [" c. M  w1 e) p        char id;
0 J2 V! O9 p! U( l, p+ q) w. R, C+ }! o0 p/ j" T5 t. f  K2 B
        Agent(char id) {, I" t- a5 E. ~! c( W# w& M' f3 p
                this.id = id;
' V! M8 o: g4 A! A7 W0 [        }
- j0 a9 P1 `0 i! L7 s
# K( Y6 B) P4 K1 }" C* R" d6 [+ B        public void agentStep() {
; Y% q8 m6 x3 w& [7 S                System.out.println(id + ":" + Globals.env.getCurrentTime());
# s' [* P5 ~* C/ b5 D        }
" z0 S1 x0 V) u) B6 ~, I}
: s! u# j* T# |9 z- R8 n3 ?
: Y, X' ]  ~9 `- ]' lpublic class ActionGroupDemo extends SwarmImpl {
$ ?3 U# D( o6 l% Z6 _+ o& I        ScheduleImpl schedule;
$ w6 P8 \8 Q1 D- ~' q" K& h        ActionGroupImpl actionGroup;
4 @6 X/ z  h. e2 @' K3 x        ListImpl list;1 G" t. `) o1 d. g
        char Id = 'a';
  `) W5 K7 _1 _
5 ^: O5 X9 {+ L: O! o+ F        ActionGroupDemo(Zone aZone) {8 c7 Z/ Y' T$ L" y+ l
                super(aZone);
( \: @0 E6 H# i; B5 f# `& M                list = new ListImpl(aZone);
% c; ?% K, D; U) G5 O) _0 U                swarmSetp();! `' k' d, Y0 r' W
                actionGroup = new ActionGroupImpl(aZone);
4 D7 U; ]* I% y: W/ ~! K                schedule = new ScheduleImpl(aZone);
/ f6 ~6 \5 O5 j* ~% `* e% G                try {
6 g; [: f) n1 Q5 z' y                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
% a0 u( Z% a) I, H& f  P) {4 l                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行7 g) G) D2 k: z' a+ k, L% f; b) r
                        
( @) x- w! Z2 b                        actionGroup.createActionForEach$message(list, agentSel);
6 [- ^1 v* c  W0 n1 F# k$ ]& x6 |                        actionGroup.createActionTo$message(this, swarmSel);  j& d- y. a' p/ l
                        schedule.at$createAction(0, actionGroup);' O0 U& _" o% P, r* l! ~! i
                        schedule.at$createAction(1, actionGroup);
" S% X6 o0 v8 K' e; d                        schedule.at$createAction(2, actionGroup);
) e0 q+ ?% c! K$ Z3 n! r+ A
) h0 n8 ?( O. h8 s: H                } catch (Exception e) {; ?/ f" @. E  U$ c% N8 |% V* H
                        e.printStackTrace(System.err);
- v0 @: p( w! ^" j                        //System.out.println(e);+ D# J" K$ F9 u5 ]# z# Y. J
                        System.exit(1);
/ ?* F5 K- L( `* P9 b& q; b+ n                }
% l# C6 w3 h% a7 E: W- J& c: M! i2 ~& `5 H. k5 y1 B2 A" y

* f) v, L8 I( J( {/ \        }
' B! d2 F/ _+ S  u, X7 t- `4 O" k6 W9 j2 Z; b. C" n$ L
        private void swarmSetp() {
, c' ~% V+ i' j4 l5 L: e% v1 n% D" e                list.addLast(new Agent(Id));
, i4 D$ E: o8 {                Id++;
3 y; _( i7 b/ C        }# ]3 G' y3 j6 J$ E" Q

4 X# d8 Q! e9 l9 l7 R        public Activity activateIn(Swarm context) {+ N# h) y: e4 m6 f0 Y% T
                super.activateIn(context);
/ Y2 k  Z: W, ^$ a7 Z6 q                schedule.activateIn(this);
. Q% W  B. E7 d4 B+ W( Z* e/ y' Q& r                return getActivity();; Y" c' w) {+ \. Q
        }7 g7 Y! Y% P- C5 u0 b) |+ I  n

3 M' e( W+ F, }* ?# H" u        public static void main(String[] args) {
  |; v2 `5 V" j( }                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
5 t1 R0 Q, ^+ P8 f                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
+ f; H. x3 ~$ ~                swarms.buildObjects();
% g; \7 a4 F; q% b+ ?                swarms.buildActions();- F, N" `& _( f: i( [
                swarms.activateIn(null).run();2 [9 w' W4 U" a9 @8 |& z
        }7 i; `: e6 h) L6 \& x0 G

: |. {5 R) \: O/ Q- e& H% m) ?0 V}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2026-9-3 07:06 , Processed in 0.014537 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表