设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13080|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 * }! F1 U2 M" I
. Z* D" Y6 s: Q" t: S
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
. L# ?" H* w0 }6 D1 X/ p以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.$ K% g# v" T4 _" |: _7 X5 Q4 c
swarm.SignatureNotFoundException( f  \/ M7 T8 `7 m- V
        at swarm.Selector.<init>(Selector.java:76)
4 u$ t9 I  G" R! l7 W) N, l5 L- r        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
; v  \: `) P- m! c3 y0 s+ m: i6 A        at ActionGroupDemo.main(ActionGroupDemo.java:67)4 t: g9 o# {; k5 [

3 ]( ]+ N/ s- e% _( N* h) b( N, V( c
import swarm.objectbase.SwarmImpl;$ `. J" \! @. i' s4 c& T2 j
import swarm.objectbase.Swarm;
. r( }& b* t4 F/ jimport swarm.activity.ScheduleImpl;% s* c. w: M4 ^1 q3 G5 q# Z; s# \
import swarm.activity.Activity;6 S2 U9 i; P: g3 S
import swarm.activity.ActionGroupImpl;. |7 x8 s9 Q: g" ?( l
import swarm.collections.ListImpl;
; y7 Z, ?0 z: F1 A' {import swarm.defobj.Zone; + n0 w  o! m/ Q* X9 W% M+ E0 L
import swarm.Globals;
7 P9 o; K- d8 b9 e# F; i) s6 Limport swarm.Selector;
0 r4 [! w" `' J! H% [7 H; j6 E- O9 vimport swarm.activity.ActionGroup; 4 A; D7 `. T, V
class Agent {2 Z8 s+ X! ^8 O8 Z
        char id;4 E- a6 g1 }3 q! b% b

, S' p5 P: Y7 N' k) l        Agent(char id) {
9 k! y5 o$ c& U                this.id = id;
5 i7 i( v, R: F+ Q' S( E        }
3 R5 ?; C2 w' d: T8 O9 b1 x+ O/ g2 n) Z! l  w- }# G
        public void agentStep() {
7 v* G! B& J. d' ~- K' a% X1 w0 K  H. N                System.out.println(id + ":" + Globals.env.getCurrentTime());
0 O8 d( f' ~$ v( |- A' e  g5 ?- C$ O" _        }
/ N9 C4 u! c1 w) |6 ]" \}4 o3 {9 g) @: [; ^3 q
# E. v0 q; }7 S9 I' B! g
public class ActionGroupDemo extends SwarmImpl {
# M. f( v9 u; y* d  V5 w        ScheduleImpl schedule;
3 e  D3 \0 ?8 u7 M        ActionGroupImpl actionGroup;' {% F6 t8 q4 `
        ListImpl list;5 W$ Q. ]% E: _4 a% U
        char Id = 'a';2 s3 }% h* ^8 W. S" X+ a

# g& y7 S1 D! A) B, f! D, ?        ActionGroupDemo(Zone aZone) {) Q* f& Z3 y$ u* u
                super(aZone);. s' l5 l6 V, @6 X3 c9 W
                list = new ListImpl(aZone);
. b+ {  o& P. j' n                swarmSetp();
5 e: ], `9 J/ t+ p! o                actionGroup = new ActionGroupImpl(aZone);, e, ~" q9 `3 @' o$ v3 v5 P
                schedule = new ScheduleImpl(aZone);3 T+ }( v- U) ]% V: S1 {
                try {8 l9 l# K. O2 J- D/ L2 s6 H
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
2 ^( e% {" S  Q6 Y                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
  Y6 t( G( i# O                        
6 H1 Z! z" L+ p/ U1 |. C9 o                        actionGroup.createActionForEach$message(list, agentSel);
8 S0 ~9 b' h) H  y( [3 w& s- e3 l                        actionGroup.createActionTo$message(this, swarmSel);9 H0 |/ @! v: \4 q8 @# N
                        schedule.at$createAction(0, actionGroup);# c6 D/ Z, F5 W2 P
                        schedule.at$createAction(1, actionGroup);0 N. c2 G6 s& [$ ~4 }
                        schedule.at$createAction(2, actionGroup);
* R2 M7 u" h7 R9 D8 B' `% j7 [8 p1 L
                } catch (Exception e) {$ U' j  q% a& U( q, `$ B* p$ H7 N6 U
                        e.printStackTrace(System.err);( l% C$ k3 ^7 k
                        //System.out.println(e);% q9 O# ]2 J2 [# e
                        System.exit(1);
2 k" W( l3 i5 b                }! e7 V! U  t$ ]* N  B
7 w+ ~2 [& v/ f( |* [/ e' h$ u
9 J5 @) j$ R# t8 f7 E4 ~
        }! @  [- b% G4 g) q( v7 V

& q, C& T- d/ P8 x        private void swarmSetp() {
% e" d6 R2 q: D" j% P$ G4 I* ?# M. }                list.addLast(new Agent(Id));
% q  p# [. N4 b( G: O, N7 F                Id++;2 @3 @- S3 m  R3 k+ L5 i' b/ i
        }* [. F( O7 w2 n& f

0 B; ]- Y2 U$ `        public Activity activateIn(Swarm context) {
& [' l3 O& X9 E                super.activateIn(context);% b9 @- M* D# F# H3 b
                schedule.activateIn(this);8 E, e' a& ]. \/ U* h- a2 w
                return getActivity();  p, M% z- q' ~6 Q" I, p
        }
8 g  j. b( P1 R  g! U+ ]* D& R7 o3 P% y3 d- ~% i; V2 @
        public static void main(String[] args) {& H+ ~4 v+ N" v5 m
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
4 c1 L1 w1 m& D4 k- ?                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);) K  k/ L9 H. m: j7 K3 `6 P+ X
                swarms.buildObjects();& G) [( y: q/ {8 U. h/ ^
                swarms.buildActions();
8 H& N* v/ n( ~4 C3 M+ l                swarms.activateIn(null).run();
/ l% ]6 X0 g2 L" ~        }, K7 ~# d- l, m% n: ^
4 C* @! T+ \: S9 g$ w9 K, B! t
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-27 20:30 , Processed in 0.020823 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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