设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12190|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 " I  d. }8 U  ?5 N2 z
$ t" P7 F' z# |
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21' L+ P! V, T1 {3 I" D3 Q
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
# y) t0 }! k% f1 L: n' y9 \swarm.SignatureNotFoundException. [0 F7 I" S- i1 |2 D
        at swarm.Selector.<init>(Selector.java:76)
! _8 }  Q5 m8 D+ h9 [; U7 o3 m        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
7 G: Y; q. a# z  r( c, s        at ActionGroupDemo.main(ActionGroupDemo.java:67)+ l! K% G6 K# L- i8 X- H; B
/ a0 V) a4 h- ]# P/ d! j" z
- m' J$ W3 R! D+ {6 ^* [
import swarm.objectbase.SwarmImpl;
' O6 t* p6 ~, `# E$ |3 S9 }2 @import swarm.objectbase.Swarm;
& G" n/ G  g% @! yimport swarm.activity.ScheduleImpl;1 p9 I9 t7 E* P/ k7 h4 D
import swarm.activity.Activity;
" h% E, t( g5 E5 B* U* limport swarm.activity.ActionGroupImpl;" r' M4 t; h4 d0 S
import swarm.collections.ListImpl;
2 N6 h# \1 t& p/ O1 n5 @3 mimport swarm.defobj.Zone;
* h2 |/ W. r. T: G) r, J" X8 U- t  O- fimport swarm.Globals;& h1 {) c; }( S  W
import swarm.Selector;! A* M# }  }  ^9 Y" T# d
import swarm.activity.ActionGroup; 4 h: N8 V# |0 H3 z; B
class Agent {* K$ X) Y7 w+ b( h6 O" q$ s
        char id;
0 q* g' f  D: Y2 q: u/ A6 f* q
        Agent(char id) {1 R; B: ^- s7 A' @; h8 S
                this.id = id;
; T  `$ G3 Y8 Z. [+ O2 W        }
3 z9 c, \/ w/ C/ n: P$ J
4 U! G( k# c0 ?/ Y3 Z        public void agentStep() {
$ T+ u1 D6 a: e* b& c                System.out.println(id + ":" + Globals.env.getCurrentTime());2 x. w7 Z' G' ^* S- X4 a
        }8 t' e. U$ O9 I+ Q% |
}" z# h# ]9 S" @8 ~/ @

: c" L9 V! v$ u) _& s& f8 f( s5 ]public class ActionGroupDemo extends SwarmImpl {
2 n0 v( z# A8 Z7 n! P2 Z        ScheduleImpl schedule;) `6 U% a  k9 Y! |2 ^; b! [
        ActionGroupImpl actionGroup;$ C" G/ [5 H* i9 F, O+ E/ X
        ListImpl list;6 K8 g, n7 V2 g4 B$ @9 Q8 t: m
        char Id = 'a';" D9 S/ Z- ]: ^

0 ?( _0 W- M1 u3 B* t        ActionGroupDemo(Zone aZone) {
: P7 _2 O. E7 U* ]1 s                super(aZone);# b: z+ s% v. v2 G9 o
                list = new ListImpl(aZone);
, }. Y% A0 v0 A& E  k5 s" k                swarmSetp();; I- Z& M+ n& m
                actionGroup = new ActionGroupImpl(aZone);8 F7 b5 W! V+ r, G9 p# D2 ?6 R
                schedule = new ScheduleImpl(aZone);
% F$ f: G, F' Y0 L8 z                try {
' b9 |# i# ]7 T; a/ E' N0 E                        Selector agentSel = new Selector(Agent.class, "agentStep", false);* Q" n8 a: n. h
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
! I! K& y4 N: x# T4 m                        
7 A3 \- [+ H) ~$ a' B                        actionGroup.createActionForEach$message(list, agentSel);# l8 M0 r" \: V9 F. B5 x6 L
                        actionGroup.createActionTo$message(this, swarmSel);* y5 {1 r& c- S; ?' a3 d
                        schedule.at$createAction(0, actionGroup);; Q( V, J4 z6 c3 [) T! ]4 |
                        schedule.at$createAction(1, actionGroup);' F& d4 B! g# p# N3 b% s1 E, @
                        schedule.at$createAction(2, actionGroup);. b8 u) D7 X5 [8 T. f4 C7 A
% _! ^; v; E2 I" x; C
                } catch (Exception e) {
  q$ a& F% q9 M0 G7 N+ X7 `                        e.printStackTrace(System.err);
, I8 N  o2 }5 B. g                        //System.out.println(e);
. F+ A+ z7 p$ t2 w                        System.exit(1);4 T" A9 j/ F' U3 \9 @  f
                }
4 [& E( G: {* C; @% a# I+ T. u2 g' Y: O& t/ V$ F6 D9 D
; k: l( ^# v% s& \
        }
; ~: q# D0 w6 x0 S9 T, M% |6 m, @( m
        private void swarmSetp() {- o6 X/ ~9 V5 D
                list.addLast(new Agent(Id));/ m3 j/ a& k- R! \% r8 d
                Id++;
+ g- q3 {7 M6 v" Q        }* l3 ~3 }4 L' e' o
3 S7 U, {9 V8 }) X% J( g
        public Activity activateIn(Swarm context) {
% k/ J6 r  e; p  X. s' Y1 r+ q                super.activateIn(context);
! ^: c3 b# e  U0 E  I$ e( O                schedule.activateIn(this);
* W: g+ c1 D8 X8 {" c7 D                return getActivity();  l, y" j, v4 u2 c" j5 b
        }
) a+ D: z* E( `  [2 L5 J2 B: x0 P, J1 i* \4 Q; }
        public static void main(String[] args) {* v7 Z! C1 Z9 ]/ e: b; [% `0 k
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);  O6 x* c- S  Q. Y1 c3 P5 Y, k
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
- [  C/ l$ o/ U" _% U                swarms.buildObjects();+ }+ Z5 }8 y8 O! r2 @0 d* `: z
                swarms.buildActions();" F5 i) r/ T: H4 L% Q
                swarms.activateIn(null).run();1 C2 S& N9 q9 x
        }
1 h$ E3 z+ x# ]+ K! [9 m
6 v+ M7 P: K: e! e. C  m}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-1 17:34 , Processed in 0.019911 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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