设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 11120|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
. w2 Y$ F) _+ |' \4 P1 ^. ~# }& Q; e" I3 ]7 q% j
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
1 |4 {# I+ B+ H. p& s3 r以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.2 u: e& V  {" q+ F7 z  q
swarm.SignatureNotFoundException
5 f! u9 p  x6 F% \: O- a        at swarm.Selector.<init>(Selector.java:76). ~. F% V$ s$ y
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)" V( B* ^- Q+ [7 w" X
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
: l% {+ k$ a% _) e0 X% }, C8 \
+ |1 m8 T2 i- `- U  z9 G+ H$ Z+ X% v% M% V
import swarm.objectbase.SwarmImpl;
- ]9 T* ~9 o" ?; W/ l0 f5 limport swarm.objectbase.Swarm;& c5 {+ e8 k$ S; r' W
import swarm.activity.ScheduleImpl;3 t; t* U% i: Z# ]' k
import swarm.activity.Activity;" H: W) [4 I9 ~& L
import swarm.activity.ActionGroupImpl;' E8 v3 F! |& }, O# j
import swarm.collections.ListImpl;
5 p1 C( L+ r" Jimport swarm.defobj.Zone; ! ]& G! t, V5 y( N
import swarm.Globals;
$ h1 c  v; d! I% ?import swarm.Selector;
$ `# q. X$ V$ x- O0 r" {9 w% Limport swarm.activity.ActionGroup; ( e8 q9 ?, H. O/ D1 d. ~2 p
class Agent {
' G# V1 Y$ O0 O. b: c- A; u8 D9 X        char id;
7 `% o' @+ q0 ^  w1 [" C! W( B5 ?: j" ~/ D
        Agent(char id) {- ^$ S- X. q  m% Y! y9 T: t1 s
                this.id = id;. S5 C3 Q( W- E  k" f( k
        }; ]2 s  }; D7 L9 n3 j- t

2 `# J* s& Z+ `2 S, ?        public void agentStep() {
2 ^  f' y- D7 e* i9 I1 M3 F                System.out.println(id + ":" + Globals.env.getCurrentTime());
4 w2 G1 l9 S+ n9 Q2 Z2 l        }
6 A: G+ ^8 u9 U. F# O: r}
7 y1 Y4 k1 E+ Z. b/ F0 p$ e  X9 L; ]( h" |4 r9 f0 w" Q
public class ActionGroupDemo extends SwarmImpl {
6 d3 d& Y% k1 D  N        ScheduleImpl schedule;3 q0 M1 g! H& t
        ActionGroupImpl actionGroup;* L& q# x- t% f1 t
        ListImpl list;* y" C! N0 H1 C& n/ r' T& c
        char Id = 'a';; H- T6 W* c5 k, D1 x& V
# K1 U6 q% {9 `: H4 `$ w
        ActionGroupDemo(Zone aZone) {+ J. Y* i) S; K0 ^1 |+ T
                super(aZone);
- X; Y& o( m$ Z0 X                list = new ListImpl(aZone);$ `3 u* G; Y: U: }, }5 k+ z* u
                swarmSetp();7 j+ u# T- C% D5 L6 H+ A" |
                actionGroup = new ActionGroupImpl(aZone);
2 R! H* m; N$ X                schedule = new ScheduleImpl(aZone);) e# E* @1 }+ u; E, D
                try {" ~  m0 J3 s5 B& l) z
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
5 r$ J1 }) m* V                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
7 W4 [$ F2 v: a' B' y  y                        4 |( K* g# ]2 p- W% K( L/ f
                        actionGroup.createActionForEach$message(list, agentSel);
9 Y  \% G$ u2 N; P5 o. ^& w                        actionGroup.createActionTo$message(this, swarmSel);
. C+ _' W+ n9 U8 [                        schedule.at$createAction(0, actionGroup);+ W; \" N0 `7 Q/ m: f
                        schedule.at$createAction(1, actionGroup);
9 o* c/ \/ i' q+ H                        schedule.at$createAction(2, actionGroup);6 V5 [; |1 S2 N% O9 ?

- t0 |1 A) G7 z/ W+ L6 `                } catch (Exception e) {
' P6 `: n0 g  N; S& t% c# a                        e.printStackTrace(System.err);
0 {: G* F% ~, V* c( Y$ b' E                        //System.out.println(e);. e, o& I/ I2 k# I. z
                        System.exit(1);
) F  c% m7 P3 n7 w# k                }
/ Z3 o+ t$ V+ ~. O
! D' L4 N, L0 `3 O. x5 m7 V6 g& G3 s  P( L
        }
( w) i' U' d* V' j
/ \6 k# Y3 S/ x5 B        private void swarmSetp() {
: j8 N" D% y" @& |( X+ d                list.addLast(new Agent(Id));, o; F* N  J- ^3 n9 D& R: W1 @) }
                Id++;6 E  q% }7 }6 J9 [
        }7 T* |- n4 X: x7 W
0 z( \) Q/ L: _7 ~2 g
        public Activity activateIn(Swarm context) {
) ~% |" \& o( O' }# G, E                super.activateIn(context);* P" s# K" K: N0 q
                schedule.activateIn(this);
- J$ y" l& O' \* u6 @( r+ N                return getActivity();# m# h; p5 S* G0 }/ Y# u' ]
        }, u, u6 @* k8 I& O6 G+ m/ S& H
5 P6 k# \( w4 Q, F0 e/ Y* k6 {
        public static void main(String[] args) {: D$ D( C% k( e) b* {% W
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);) Q" t) W( S+ T8 t3 Y, _  C
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
! T; f) v; i# \8 E5 w                swarms.buildObjects();2 s3 S1 i6 |) a4 |" x. K
                swarms.buildActions();
! n/ i: t. e% u                swarms.activateIn(null).run();
9 s5 I! R7 {. b5 q- W  j        }# @. `8 h! i% N+ _/ u+ `- ]

- @+ G  m) U* m5 V1 e" a! Y}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-3 16:36 , Processed in 0.013743 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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