设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9710|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑   ^' U" I/ K/ }

% t8 m6 B7 S0 g% W0 z本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update218 y1 f) p2 j# X( s( I0 T& }( [7 y
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.0 r+ ^! B- a" n9 o- ], f8 g, B
swarm.SignatureNotFoundException; w( W& h5 N, x5 F3 x
        at swarm.Selector.<init>(Selector.java:76)
7 R* v! w" o% [: O  Y        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)' D* n& \5 b2 T8 D5 F( [1 ^, A
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
# A$ L/ y( x7 _6 q' @
" T0 X- ^. R& k7 w
! m6 [/ |- s! s0 ~9 z4 i3 B4 Zimport swarm.objectbase.SwarmImpl;
2 U+ ^& A0 U' @0 F) Dimport swarm.objectbase.Swarm;) v0 y# _* Z, l
import swarm.activity.ScheduleImpl;2 j/ n  q/ i) ~2 n  }
import swarm.activity.Activity;
! N' n6 D9 N( j0 @" Qimport swarm.activity.ActionGroupImpl;9 ^' r8 `) P% o" @% s6 b
import swarm.collections.ListImpl;
- M: x  Z% w5 c2 Rimport swarm.defobj.Zone; , K) N$ T& [8 x+ ~, L
import swarm.Globals;, `" f" @, r7 q
import swarm.Selector;
" Y% W. s9 G" v) D0 S( z9 G: Rimport swarm.activity.ActionGroup;
% H, @& |4 O6 G+ C5 |class Agent {
: \* s# u0 J: y% w3 H        char id;
! j2 `% ]7 w; u" @- d# h3 ^6 ^
2 g! V/ \) F& ]! l% r5 l        Agent(char id) {' L2 d: z* g6 U2 {
                this.id = id;
' @* i, V8 O! ~& F        }
& ?, R0 g. I) m; U1 h4 \6 m# D  |$ w9 A8 B
        public void agentStep() {
/ N8 M. n2 O. H/ \- W1 [                System.out.println(id + ":" + Globals.env.getCurrentTime());
* j& o+ C% c$ K& c% {4 L6 }' A        }
+ |/ f1 p3 K# F' F6 A& n: q3 F8 S}
9 x. `) b2 Q4 {1 u3 x
7 |* f/ @- Y6 ]public class ActionGroupDemo extends SwarmImpl {, X+ @$ P7 b3 H) [3 M& G0 x
        ScheduleImpl schedule;- J9 w$ S8 n. ?; v9 f+ p- t; M
        ActionGroupImpl actionGroup;0 {. |" e; s/ w# `2 o- G
        ListImpl list;
, p+ A) e2 a' w0 V        char Id = 'a';
" K4 \. X/ c+ l% n& W) L8 g3 T$ @/ Q- g9 j" I5 M
        ActionGroupDemo(Zone aZone) {
* \6 o3 C+ p( n. d9 U/ c                super(aZone);
! ]: F  M" k) @7 I2 ]                list = new ListImpl(aZone);
; |% H) C8 p3 ?* q+ j7 d                swarmSetp();
% y& q7 o' [% p; u                actionGroup = new ActionGroupImpl(aZone);5 O+ @/ N& A. i3 h
                schedule = new ScheduleImpl(aZone);
" K; c1 K; V2 G! F) c) A                try {
7 l/ C2 W$ `; `8 L1 d; s: h                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
6 b  G" n% U+ w+ _1 R8 f$ z                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行9 s  |9 ~" @1 j2 B$ A
                        
' V" z' h6 r9 O& g3 o                        actionGroup.createActionForEach$message(list, agentSel);
! G  o2 e$ O3 Y! h$ H) n                        actionGroup.createActionTo$message(this, swarmSel);( F  F2 x2 u$ p, [
                        schedule.at$createAction(0, actionGroup);
5 I6 N! F6 S  j" v4 _% N8 L                        schedule.at$createAction(1, actionGroup);
$ K1 G/ r- R4 |                        schedule.at$createAction(2, actionGroup);, ?3 P9 ?: {  c# C! b, b* c% r

+ l4 P& k/ K& Y                } catch (Exception e) {
1 F$ R: l0 n$ O+ L* P$ S4 Q: {                        e.printStackTrace(System.err);% P3 R- @7 _' {8 r! |
                        //System.out.println(e);% r6 w  i. g) ]& F7 y; ], s
                        System.exit(1);4 N. n/ Z0 |4 G6 N0 {! a, Y* P
                }
; ]$ Y, W9 A! I2 T- M' h* `  y+ t, l9 u% T% f. {# I+ N, P

: l  J: D, f5 `; Z5 D        }* H9 O" L  f: S2 o/ y
- _0 R+ S' t& \$ f7 m3 L! m
        private void swarmSetp() {
7 j9 Y( T( ~5 z, h                list.addLast(new Agent(Id));
' Q( u( k. L) [' A                Id++;
3 r( O8 s' @! S  G* f) X! _1 ~        }
, f! Z  s* H- e8 G) D. @2 i: w4 M9 M) I& f
        public Activity activateIn(Swarm context) {
5 _/ C/ T& t- m                super.activateIn(context);
3 V- }6 S+ e5 _8 t& O: p, O/ U                schedule.activateIn(this);4 Y+ a+ D+ K+ ~
                return getActivity();6 B" Y8 ]; j: @2 L/ K
        }
& ]& g+ V5 _3 a( f3 b, p4 F2 F8 n
        public static void main(String[] args) {& C- ?& `9 X% @3 B5 `: v
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
: e. j4 t- F$ V; X  \. ~                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
% a# O. F& d4 |. V/ w- S( ~. B                swarms.buildObjects();& U: g8 n0 W; i+ N( C
                swarms.buildActions();9 P  M! v+ C7 Q2 d
                swarms.activateIn(null).run();* J& T6 i( [( M2 j2 [; _
        }
5 t. l  _6 n3 ?3 s; }& \- _- j; W; y! D+ ~" u$ q9 d5 x
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-20 10:07 , Processed in 0.017974 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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