设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9280|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ; _3 _9 }% s$ m/ Y

, a4 K: A1 b8 L) x5 W本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21- `0 w2 v1 i& G0 |, K* ~+ U; g+ f( R
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激." a$ L; R9 _- H. L6 \' T+ u! H
swarm.SignatureNotFoundException
& B$ u+ v% U* a& \8 u9 {% O9 {        at swarm.Selector.<init>(Selector.java:76)9 n7 E: [) \  E- i
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
& ~9 W2 X5 H8 u( }        at ActionGroupDemo.main(ActionGroupDemo.java:67)9 `- S6 Q; |( T# z1 z3 s
3 l- ?4 L. f$ ~8 G

, N5 @" b2 c! Z7 k, C. r) G8 Kimport swarm.objectbase.SwarmImpl;! t  T6 _) @4 l
import swarm.objectbase.Swarm;3 m) F) e! F; o' ]. O% r
import swarm.activity.ScheduleImpl;4 K) Z( m- z/ V
import swarm.activity.Activity;9 M! a0 z- M: S* @  n5 A
import swarm.activity.ActionGroupImpl;; ~0 O  w3 F  P. P* S; \
import swarm.collections.ListImpl;
+ `9 R) S: U( q7 e2 x; t% A- {import swarm.defobj.Zone;
2 \- M+ {, O2 \5 U& n7 pimport swarm.Globals;% G# f9 v8 z1 M0 Q2 n) H
import swarm.Selector;
/ ]5 C1 }7 E1 O5 n6 `  Z" F! @, a7 timport swarm.activity.ActionGroup; / L$ R* y8 Q. ]- E  f% m! Z' r
class Agent {
4 D9 _3 B% c4 C/ c2 T        char id;% c& V; f# F/ ?. }- k4 _/ ~# G

" p" b2 L; x* l% |. y5 M        Agent(char id) {
, v  p" o  H8 o; m                this.id = id;
: h# f0 j* E3 @5 I+ t& O        }3 i$ L% |9 R: I- V) T

* ^2 ]9 S2 l% p        public void agentStep() {' s4 ], t! r2 o( D$ @$ c- H
                System.out.println(id + ":" + Globals.env.getCurrentTime());+ v5 g/ b8 f' F0 s+ x% I' {; U
        }' H6 U# z- a& Q; @
}
% G0 p/ ^* b' l$ x3 y, d1 Z- c5 f8 g
public class ActionGroupDemo extends SwarmImpl {
, k9 M) Y, ^2 S# c8 A        ScheduleImpl schedule;! [2 p- m; T  g/ e
        ActionGroupImpl actionGroup;
, j/ `7 R% P& C# k        ListImpl list;4 s9 G- ]+ C( u$ @/ o3 a" q6 T
        char Id = 'a';
! {, o  T& F# B+ v, ?; w9 s3 i* m9 S
        ActionGroupDemo(Zone aZone) {
3 o4 z5 e5 P0 m                super(aZone);
) |* [$ B2 o8 E1 {, }: a                list = new ListImpl(aZone);
- \1 H& s# u" u1 {8 d                swarmSetp();3 P2 V* c4 J. C4 t$ Z' N: J& X
                actionGroup = new ActionGroupImpl(aZone);- L. I. f; V1 V5 |( u
                schedule = new ScheduleImpl(aZone);
( G( n. c, d( ]" \3 O* k                try {; Q& |8 r$ o  K1 D: q! j; \
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);; g3 P/ P, \3 z
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行' N4 x# T. B0 x5 Y7 r  r  ]
                        
# a) M$ [  P( z                        actionGroup.createActionForEach$message(list, agentSel);
$ h3 L% p+ a+ \                        actionGroup.createActionTo$message(this, swarmSel);
) m; v; n, q* P5 b4 p                        schedule.at$createAction(0, actionGroup);
/ L- S) i6 |# P% d) t                        schedule.at$createAction(1, actionGroup);
9 [, G3 X+ {% g' T7 @; l                        schedule.at$createAction(2, actionGroup);
8 B: j+ {: k$ X5 p4 S8 z4 ~& K% E
                } catch (Exception e) {
" T+ }; ?7 E9 s                        e.printStackTrace(System.err);
/ R" m5 t: Z) v0 U1 [* s/ K                        //System.out.println(e);
8 k6 T7 V% _& w; g                        System.exit(1);% ~9 d( R* W) N+ [1 Y, F
                }
' Z! R2 F7 ~1 C5 X+ W" W) ^) @" ]
! b8 p3 ]/ E. E- V, q
        }
. d  e3 A+ P8 ?& }8 Z0 \, Q' |
7 ]. j, _4 T. ?! u        private void swarmSetp() {
, t5 i" m& ^4 v; P4 c                list.addLast(new Agent(Id));
. `6 T' u! J; e                Id++;
# x6 F3 w+ ]" z/ b# F' S        }, @0 S, ]0 I/ N4 ^" T) Z! m
. ], A9 c1 e4 h: }( _  N
        public Activity activateIn(Swarm context) {
: H$ O( j; b; U/ I# i/ v- g                super.activateIn(context);
2 {6 e3 O3 ]! y0 f2 C                schedule.activateIn(this);  |6 K- J5 e! C3 c, L% U
                return getActivity();6 @& G3 V! m/ u
        }
# ~  `% H3 s* d' n* g- B1 ]; \& q+ w
3 A% B& O' Y  B( t        public static void main(String[] args) {
; j4 H; ~# \! s; }                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
& H! R! H+ y% M) E' j3 M/ ?3 O                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);1 ^  K. {; g+ [
                swarms.buildObjects();4 w% p  S& N4 j% m
                swarms.buildActions();
. T( B2 J! p8 f- K4 G: J                swarms.activateIn(null).run();% i, L3 M5 \% K" a
        }
7 g  \, J6 y5 j- e/ G
5 ^4 K- t4 Z& N4 E# d2 Y}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-7 10:05 , Processed in 0.019282 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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