设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9119|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
$ v2 n3 l+ o& I. m! p# q0 E( ^  M# o3 C) B, R( g
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21- k" g! U. O1 S9 K/ K, G
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.6 B8 O9 [% y$ I+ v2 ?
swarm.SignatureNotFoundException
! T4 S/ f( g' y" S8 u        at swarm.Selector.<init>(Selector.java:76)' Q" l; M: {' J' C+ m) ?
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
5 j! Z' N7 T2 ]- y        at ActionGroupDemo.main(ActionGroupDemo.java:67)
( m) @4 q& \+ S: l4 k* g3 [. P8 O2 X3 ]+ u+ c( w" z: o" `

& A& x" l/ W: c3 y2 N, bimport swarm.objectbase.SwarmImpl;1 {4 g% Y0 d9 V- C
import swarm.objectbase.Swarm;$ o! u: @/ ?% R* ?! r) \: @
import swarm.activity.ScheduleImpl;  K7 g/ K) T  c7 H& }
import swarm.activity.Activity;
2 W! c; s, c$ z: n* c; H% qimport swarm.activity.ActionGroupImpl;
+ k. H8 w% {2 Y4 p. H- E4 F) L1 A8 aimport swarm.collections.ListImpl;' Y. E5 K+ o+ H1 t2 u. n: t
import swarm.defobj.Zone; 8 Z! a5 q- Q5 b; [
import swarm.Globals;
! m8 e6 F# G5 j' k. \import swarm.Selector;. V: K# b7 p' E+ x0 |8 e8 I) C4 q
import swarm.activity.ActionGroup; 5 k# e. ]9 ]) ~1 [# l
class Agent {' n9 n* ^& N) ^& k6 X3 f% C) d
        char id;1 Z2 |' o, O$ N9 q1 H& \1 }+ D" X

. r6 N4 m) d( k, W$ @  y  p( A  b% Q2 \        Agent(char id) {
/ n1 ~6 L  ^- @                this.id = id;( S6 B' B/ _& R! F( y$ V3 V  E; }
        }
* v9 `; \+ c( G$ @! I) C2 ]: W" D9 l. e9 K# E
        public void agentStep() {9 D/ k& m  r" m
                System.out.println(id + ":" + Globals.env.getCurrentTime());8 p% h8 I4 _" H6 b2 ~1 a* t( |8 d
        }; [: o2 g' Z- b/ s
}9 w% i# f- p, q4 m5 E  L

9 L  {! K% ~& Q+ ]0 j, l+ \  epublic class ActionGroupDemo extends SwarmImpl {
4 w8 u2 q5 v" ]- P$ @        ScheduleImpl schedule;
% ]7 [/ f6 S& [5 [        ActionGroupImpl actionGroup;
! m5 B" ]9 G5 n0 Z3 O' p        ListImpl list;) f9 E5 b9 a  v4 K' d0 T
        char Id = 'a';
9 w5 s2 ?9 L* m
8 l7 y5 |  ?  K; M5 X        ActionGroupDemo(Zone aZone) {; A! ~/ s( m  o
                super(aZone);6 g) R) W# t& T
                list = new ListImpl(aZone);
( d4 i" g0 h" D8 v0 X7 L                swarmSetp();: T) s- D; `# R3 Z6 i' E
                actionGroup = new ActionGroupImpl(aZone);/ {4 f9 m) i" b
                schedule = new ScheduleImpl(aZone);
) R9 ?( t0 L1 I( l9 M. \3 O                try {
7 o/ F6 @( ~% r& f4 e% k                        Selector agentSel = new Selector(Agent.class, "agentStep", false);" R) f% q( X1 H. H4 w; I8 I, d
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行; E7 a& M; ?9 @  {; P0 X
                        1 z  V& [) g( J( O8 r, A& L
                        actionGroup.createActionForEach$message(list, agentSel);  A. k& g4 D/ W& [
                        actionGroup.createActionTo$message(this, swarmSel);
+ k' ^: K9 @" B! y9 D: U                        schedule.at$createAction(0, actionGroup);
. w0 A8 W8 a" m. D7 L6 V8 y                        schedule.at$createAction(1, actionGroup);7 ]3 ], U4 G/ \2 }' {7 g2 @
                        schedule.at$createAction(2, actionGroup);6 k/ n" D: i) W" x( E3 c3 i

8 {( l% a7 O! `5 Y. m9 e# w                } catch (Exception e) {
+ R- l1 x. c! f                        e.printStackTrace(System.err);% X# T) o# i# K0 ~* D( h
                        //System.out.println(e);
8 `7 W+ X. N1 g" s5 t                        System.exit(1);# G3 O: U) h7 y! G8 t( S/ s
                }
3 @; p( \( q+ \! r! |4 v' d. }' v
) j/ o; V+ ~& k
0 ~1 D! C4 g; P' z6 F        }
6 B: z( y/ y  n( S3 Y4 g8 P2 ~. e& e+ D7 ~( e* X+ o
        private void swarmSetp() {
7 Y2 v+ w0 r' R0 R                list.addLast(new Agent(Id));
& u. Q# s2 c4 a- M7 G3 u                Id++;; b  [; p$ r/ z' f
        }3 k$ R7 G3 r2 T0 G% f
4 T3 ?% r9 h& P' I8 h) N  l$ [
        public Activity activateIn(Swarm context) {+ Q; f; `, J( \: T0 D. R1 w
                super.activateIn(context);2 e, g, W. J1 Z( s5 y/ m* e
                schedule.activateIn(this);8 \% t. }3 {. ~6 r2 r
                return getActivity();
& W/ S# O: }0 n9 v/ @' H        }
+ b7 P9 H! ~5 e! z: c3 n
. `- q6 b. |4 v2 M7 N$ h9 B" f        public static void main(String[] args) {7 `2 s( F  F9 M9 q
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
( R2 X2 q& b9 Q' }                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
. H" f2 ~% |4 P1 o8 b+ U                swarms.buildObjects();: x. o  ^* p/ ]2 q0 k
                swarms.buildActions();
. Y4 m( B" X$ |& I                swarms.activateIn(null).run();7 F+ V0 O5 ?- x7 |0 |$ p
        }6 D, M9 @' n  B3 o2 d3 S$ z
9 z) e$ K/ B0 g1 U$ D
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-2 00:53 , Processed in 0.016373 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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