设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11068|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
7 w4 |+ L: \5 \. U4 y- k, |: X" @  `; x
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
- S8 G! u  o" {. {以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.  [0 O% s* n+ d4 ^2 r& f6 b1 C
swarm.SignatureNotFoundException  U: b( r0 Z- ~9 _( U8 R; F+ m
        at swarm.Selector.<init>(Selector.java:76); Q# ?  Y, n8 {7 J8 A8 m) o4 d% J
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
7 {  D# L& D8 e% R2 O4 H        at ActionGroupDemo.main(ActionGroupDemo.java:67)
2 t, S& p+ a6 f. s9 ?
2 X1 D# H% N( E- [* a  I1 j" I' }1 E% N/ Q" j" Z
import swarm.objectbase.SwarmImpl;
1 G7 ]6 l$ }, |, F/ Oimport swarm.objectbase.Swarm;
* G) `9 H2 B- P/ M9 n  s9 ^* E0 Zimport swarm.activity.ScheduleImpl;8 a& {$ o3 i. v' b5 ]
import swarm.activity.Activity;
" ^5 n3 m3 U7 q2 f1 wimport swarm.activity.ActionGroupImpl;9 m) T: C3 `* P2 @/ e
import swarm.collections.ListImpl;
* X' J4 J9 [% yimport swarm.defobj.Zone; 0 c  `2 ^1 R$ `4 s8 X6 k7 X
import swarm.Globals;: ~" w& w( c. e4 \& O% }" A
import swarm.Selector;" u" G8 V% o0 G/ r; V* n1 y
import swarm.activity.ActionGroup; % _) z' |% J9 N  g6 f
class Agent {
0 p4 y2 W! B6 u  d6 E! }3 g        char id;
5 C) K7 e" X8 x7 p! u
9 @- ?9 N  X# |        Agent(char id) {
( [7 B' O4 J; N: k3 N                this.id = id;( k: K5 e1 o9 X3 c. u
        }: u. \( C8 c2 g  K) G
0 o4 I: A/ y0 l% |8 Y# Z/ I
        public void agentStep() {
3 F& g: \) |  W0 A5 ?9 g  z                System.out.println(id + ":" + Globals.env.getCurrentTime());
1 T6 U( R! F) _' N4 K4 n        }$ ], i8 T" x. t
}
7 A$ J2 e+ A* g- Z9 E4 R/ G0 p* [% S9 ?
public class ActionGroupDemo extends SwarmImpl {  x7 A  U' E; Q* Z/ G) C: U
        ScheduleImpl schedule;/ N  d3 }' E* S
        ActionGroupImpl actionGroup;7 W0 P/ ~, ?# j. s
        ListImpl list;& M) T4 _( f$ Z1 l2 m
        char Id = 'a';
, w& X, j! x; ~; n( {; g/ B& r$ ?! l1 q% I) d
        ActionGroupDemo(Zone aZone) {
4 i' s5 n( v9 k! S, ~) D5 ]+ [' l                super(aZone);
# _0 |4 }8 {- B: h! _  G                list = new ListImpl(aZone);
4 {, P6 D% J+ Y& P9 C: j& v                swarmSetp();
# U6 Y* X* G8 t  I% M( v                actionGroup = new ActionGroupImpl(aZone);
# X/ H3 X" W" O1 D4 b4 l& l! |& m                schedule = new ScheduleImpl(aZone);
4 G7 K0 z6 |. t! B1 W8 d) N                try {: d! Y4 r! @8 T3 v
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
3 N; ]+ u6 A& W0 Q7 R! d                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行5 R, Z/ t# t4 }+ z4 g; c" i5 Z
                        ' E  j% Y, y" [7 Y$ l* O5 d# ?
                        actionGroup.createActionForEach$message(list, agentSel);6 @. `) ?. T, j! K" F+ N( u& B
                        actionGroup.createActionTo$message(this, swarmSel);
& A7 ~3 V9 W+ K: h* r% T4 ~5 @4 c                        schedule.at$createAction(0, actionGroup);
' B' L  B# b8 y# X+ m5 B                        schedule.at$createAction(1, actionGroup);& n, A  i4 n# G" S# g6 O, o
                        schedule.at$createAction(2, actionGroup);
9 \8 t6 |% {) W
( v7 s: H; S* l/ @                } catch (Exception e) {
8 z( I7 A3 c2 K! W! t, r! W                        e.printStackTrace(System.err);7 j- S, O2 }- a7 Z1 S
                        //System.out.println(e);. o0 {1 U% h" q2 {, d: P
                        System.exit(1);
8 s1 e2 G* i$ ~                }9 p# V& h4 ]7 l; D
  |. y' _9 o( j" z$ ?/ [( X9 ?2 s

0 K. L+ I& D9 y( u9 h        }
1 q  R, ]" L5 q  }+ t- H. o3 Q: D3 N' k$ i7 T
        private void swarmSetp() {6 H5 H+ _* ^* k- p6 V, o
                list.addLast(new Agent(Id));) r3 H7 @4 [+ O2 x
                Id++;
4 s4 H% G1 {; C0 ~- l3 R& P/ J        }
, Z) c2 o, m* D2 V/ ^. {5 y: J5 P$ z4 j" z' x
        public Activity activateIn(Swarm context) {* n, x2 Z" _' U8 F  I
                super.activateIn(context);
/ n+ f6 {8 e. L0 x                schedule.activateIn(this);6 |9 F1 R0 z2 \  v0 s9 `5 C
                return getActivity();7 i/ c. l7 G8 g# c# c' |1 g
        }+ j# q" y+ i" ?9 s" t' ?9 R  K

- b3 Z% u/ F: U- O3 S( M        public static void main(String[] args) {, z8 @$ P! R. z% r
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
0 r4 Q$ S& d7 n6 N; b                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
" R' ]- l& n0 X; ]                swarms.buildObjects();: i3 t/ A" b9 B$ O) P
                swarms.buildActions();* i! C3 Q" p2 `, a
                swarms.activateIn(null).run();
# Z5 w5 @4 N: T        }
* ?5 d0 l7 `' i, v/ m, K; o& `1 o; d& M
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-2 01:25 , Processed in 0.016529 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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