设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6536|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑   N9 Y4 g3 m" }. G) V: ~* p0 J

' N" G1 [; B) _- v7 h; _, r本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update212 n* h& R! v; R
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.& [3 z5 s2 T+ k8 n
swarm.SignatureNotFoundException9 F- ^! O, r& j* O
        at swarm.Selector.<init>(Selector.java:76)' e5 U$ t5 {% H7 e
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
7 i) q- T6 @% K& M" s        at ActionGroupDemo.main(ActionGroupDemo.java:67)
/ V/ e6 n; \; C9 M
; r4 D1 o; R8 ]- b5 D* g' K5 ?6 R3 k6 T# R' Y- j* V
import swarm.objectbase.SwarmImpl;& _) H% x" B& m& ^
import swarm.objectbase.Swarm;! S: `5 f9 a; I+ w0 v& g2 e. }
import swarm.activity.ScheduleImpl;
0 U4 U: l3 v9 S8 L5 L4 ~- jimport swarm.activity.Activity;7 Y/ m2 N  ~+ ]- y1 i
import swarm.activity.ActionGroupImpl;! c* J/ m( Z5 b
import swarm.collections.ListImpl;
( H2 V$ X1 u6 H3 v$ V0 Vimport swarm.defobj.Zone; . v) h5 W& U- ]1 U) ]
import swarm.Globals;/ [% _7 d6 n* v3 D  K# T* j( @
import swarm.Selector;
9 t3 O2 L+ m$ A9 Z( r3 F& `import swarm.activity.ActionGroup; # l5 U2 @$ a; N0 I* p
class Agent {# t  o8 E+ y4 ?+ G
        char id;
- t. U, ?1 }$ H- t- r+ j
. \. x( s0 f. @0 m" `5 _+ Q        Agent(char id) {
& {/ r; ~6 e( b3 B                this.id = id;
, T" D3 S, u! P9 z, y' ^# R  C! c        }
: X  |- J' k2 ~( |
8 ^4 a- e* y- r( X        public void agentStep() {/ C. E( }) N8 L  t: ]- ^% y
                System.out.println(id + ":" + Globals.env.getCurrentTime());! B5 [# u* H5 i  Y/ S: m
        }0 @; {% d9 c. [+ L, M' c+ {9 ]
}
# I  o$ b* |, u2 h- Z1 Q, j5 y. f0 K/ f' J- \5 h+ S0 w
public class ActionGroupDemo extends SwarmImpl {
1 ]* n( C4 n% P* p4 D" k( G        ScheduleImpl schedule;
$ r+ W+ z+ W/ z/ t& X        ActionGroupImpl actionGroup;
, `' B8 w3 J) F9 k$ V        ListImpl list;
. C/ b2 `$ E8 o( A        char Id = 'a';  n$ b- c4 h8 j  L

# P# z* b3 M9 ?$ s* M! p        ActionGroupDemo(Zone aZone) {
7 T1 V2 d) i5 E$ W9 b                super(aZone);% C+ T' E& C6 y* ?
                list = new ListImpl(aZone);
4 C( W9 c2 X1 q0 H: |                swarmSetp();$ H& E" W0 x  }. t- i
                actionGroup = new ActionGroupImpl(aZone);6 X% D& w9 L4 [  X6 f- N
                schedule = new ScheduleImpl(aZone);0 w9 H/ ?( q' f  [1 s
                try {
. |# L. u/ q, c" S                        Selector agentSel = new Selector(Agent.class, "agentStep", false);, z+ C  ]4 R2 r; G7 ~; @$ }: t
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
0 T) C# n6 T  ?, B1 Q                        8 d- R! ]; h% ~6 ~4 b
                        actionGroup.createActionForEach$message(list, agentSel);
8 c( \$ L1 @7 \                        actionGroup.createActionTo$message(this, swarmSel);
$ x) d% f3 L# q6 a4 c( M! z7 o( a                        schedule.at$createAction(0, actionGroup);; k  V) S# n' Y+ O1 _# V" o6 V
                        schedule.at$createAction(1, actionGroup);; X% v* }  K. B7 x( }
                        schedule.at$createAction(2, actionGroup);
& p" ~& G3 l! a: K" E4 w9 z
( C0 x/ l! M. i% h' ?# T2 I                } catch (Exception e) {) L& a; B  f# q
                        e.printStackTrace(System.err);
9 o  m# \) H# \4 }# e                        //System.out.println(e);
  F- k! y$ Q7 R1 N" o                        System.exit(1);! s* o% k3 k8 L2 w) Q
                }& n& @2 ~% g) R3 d( o" B

# u' K5 O1 f: `' h$ ~
" h7 `. E# x/ K1 j        }6 V3 r* `4 ~9 t/ ~- X' u1 W* g; X
/ }- E  t& K& ]" F1 ]# x7 {
        private void swarmSetp() {
& a$ f& j0 V3 ^/ k0 }                list.addLast(new Agent(Id));
$ m9 Q* [6 p  c+ ~                Id++;( @: K% ?$ Y3 n1 v, _: \
        }
8 O8 K4 @/ M- T9 o5 }( o4 g2 m! C7 o6 |! Q: D$ ?4 J& n
        public Activity activateIn(Swarm context) {
9 e- q" w" i' Q- G" }; N) N                super.activateIn(context);
( V( _4 A) b" @6 {                schedule.activateIn(this);
* @5 J% \4 g! A- ~2 s# c. Y& u                return getActivity();
; E6 {( A/ B. P; E        }
8 D! V" H% P- T# b6 P3 p1 w7 R# [7 i
        public static void main(String[] args) {- W/ f' U: @6 E. ~2 I8 f0 \
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);) H0 {" e7 ~. L: g7 b$ F9 _
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
3 I8 F/ D8 f) z# @4 U6 H                swarms.buildObjects();
; P0 b" v. m5 r2 Y+ Q1 \                swarms.buildActions();
, K& G) v" X- A* e" G0 a/ k/ h                swarms.activateIn(null).run();$ ]( `) L& N3 `5 V/ s/ }
        }$ O. B  b( m0 k3 _7 ?

0 y2 r0 j; y6 g/ f}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-31 12:08 , Processed in 0.016996 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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