设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 10619|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 - u! C1 a) W& P  q1 [

1 z7 I- X8 |, t( C9 w本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21% j; c# x  h4 v- G
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.- Y. u7 }: u" k3 }! x$ D
swarm.SignatureNotFoundException
" V) H' o; G* z" v        at swarm.Selector.<init>(Selector.java:76)
5 }: c% _5 ]* a- N, q9 [        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)0 q/ i" o* b7 h& |6 ?6 M
        at ActionGroupDemo.main(ActionGroupDemo.java:67)4 F! _% p; G0 x# L3 f+ k
9 Q& ]# i+ |9 l4 i+ e5 h( l) w
5 |2 c+ X$ b1 ~, J
import swarm.objectbase.SwarmImpl;  G% [1 h4 V2 O& o
import swarm.objectbase.Swarm;2 n$ |) C" @- x* j' o% R2 s
import swarm.activity.ScheduleImpl;+ g3 \& M! p5 _9 i
import swarm.activity.Activity;
' b- J. D. ]: O3 \import swarm.activity.ActionGroupImpl;
9 t- c+ z/ I: x4 T) l; yimport swarm.collections.ListImpl;
- ?! K( J* F0 Vimport swarm.defobj.Zone; 8 T5 _% p1 r& m* F1 y* `/ h& s
import swarm.Globals;9 W& d" c- X3 I0 K: K0 B2 x) m
import swarm.Selector;$ s6 B  a8 C7 W, w
import swarm.activity.ActionGroup;
* ~1 i" O* }5 n* f8 }4 kclass Agent {
+ ^% u7 r  b; t' ~. |& I$ a        char id;0 p0 a5 Y. W9 g( C% Q/ C, K6 O

) y/ Y# q* O! E        Agent(char id) {
8 z1 ?4 U0 z) H2 M: D; h8 V                this.id = id;' I4 y/ J. j& ^! t  i0 L
        }
4 x' l) j& ^8 \, e& e
, Y; q7 a7 [& G0 V        public void agentStep() {9 `% n6 A8 I& w  z! o
                System.out.println(id + ":" + Globals.env.getCurrentTime());
& @0 L" s3 D" X  b        }$ T4 R! j9 |4 L2 y7 @
}
& m, _- u0 J$ P7 @/ v  A( `
- m+ S7 Z- o( k# h' X5 m8 O4 vpublic class ActionGroupDemo extends SwarmImpl {
8 [, N0 ^3 o. x: F        ScheduleImpl schedule;
( l7 E0 _7 {) }2 W        ActionGroupImpl actionGroup;
. c$ V! R" S5 _# h        ListImpl list;0 y7 l$ R+ \0 V6 |
        char Id = 'a';
$ O  `) c! S6 e2 p
) W3 z) t4 I' t        ActionGroupDemo(Zone aZone) {
# F# z& Z8 {; G6 t# v0 a                super(aZone);, t2 Z, F8 S$ x1 t
                list = new ListImpl(aZone);
  V9 a: q4 c) v$ o& M( t* z                swarmSetp();
5 h: Y  r( D% Y; O; Q/ v                actionGroup = new ActionGroupImpl(aZone);$ ]1 z+ t# \3 d  t8 h
                schedule = new ScheduleImpl(aZone);  i& s4 y% N4 q1 f
                try {# L5 j5 q$ F( E7 r# Y1 D/ ^+ l
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);- b5 e4 D' C* E
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行. P! \; J+ X# X5 P+ q  g
                        
1 T+ z0 N: U+ E) R+ I* T                        actionGroup.createActionForEach$message(list, agentSel);% E5 {$ H4 B  f  u7 ^# y. I0 y
                        actionGroup.createActionTo$message(this, swarmSel);
/ E$ u2 G0 M; Z0 E                        schedule.at$createAction(0, actionGroup);& N8 ]( f: T6 x# b8 c$ A
                        schedule.at$createAction(1, actionGroup);+ j. J$ A' V' e" S* R( a& ~
                        schedule.at$createAction(2, actionGroup);0 n* h7 z$ Y0 w

0 _1 |& _2 W* M# X/ F7 ?                } catch (Exception e) {
9 ]1 G- m" j$ N                        e.printStackTrace(System.err);
3 a9 c, u2 d+ V, w) f, `                        //System.out.println(e);. l5 H8 t" r: f
                        System.exit(1);* O* X3 j" M  k
                }
2 q( e5 }+ N% V, b' _, R6 c# f; ^" K. \# X1 w2 ~

# e4 |4 u, H8 _+ o1 f+ b$ B% Q        }& X. `8 @1 b% r8 @# c- L; s
" A; {/ J; L: R0 q
        private void swarmSetp() {
% R% f! X" f( n" A$ E* |                list.addLast(new Agent(Id));3 d2 l8 W1 O2 ?  {' _) ^' X
                Id++;+ L2 j; L. X% q! g* g7 v
        }- F7 ]! r2 L" q$ p2 _

* `3 b3 B6 ^2 `1 A# ^        public Activity activateIn(Swarm context) {
" ]  |; ]# q; o$ n% g- t                super.activateIn(context);
3 k  v$ q! C3 Q0 _                schedule.activateIn(this);8 X9 q; H+ N& c. Z7 u8 W" Z" N
                return getActivity();
& a+ k  Y+ K: z        }
  X, L* Y# W# i" q0 ~5 b" A9 Y& `
* l, O$ j* ?2 y5 l& {1 s9 M) ^* b- ~        public static void main(String[] args) {8 P" @! B8 N. s# C8 l2 d
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);9 {; V7 {% p& O( @( U. I) }( c
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);2 ~/ O& |* z; }, h! [6 ~
                swarms.buildObjects();
7 T" J4 r& ^' l  c2 Y                swarms.buildActions();) @2 q+ P5 J- A" A, d
                swarms.activateIn(null).run();
9 N. W; ~. I9 h9 V1 N$ }1 Y        }$ o( J8 ~) U# R% ]$ J! W

2 n7 e! z0 l" x7 K; ~. \/ r}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-6-18 18:14 , Processed in 0.014896 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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