设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12932|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 1 \- f% g. ^8 D- x  e9 n4 P
4 q9 j; R8 m: P* |: k( U; v
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
/ N5 b1 D2 J/ n8 r+ D以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
/ A3 R0 s3 q" d$ J3 f7 }: jswarm.SignatureNotFoundException9 u  {0 q1 R9 d* y
        at swarm.Selector.<init>(Selector.java:76)
# U/ k; l* d7 N$ k+ l; r6 F. a, t        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)3 b2 U2 r# s) b4 ?8 q- j/ A5 n! P
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
4 H7 g$ u  _" ^% R/ O, f
* N2 f- E/ L! Z2 R/ @) H& x# c! C+ _9 N. i6 L! @3 c
import swarm.objectbase.SwarmImpl;
7 P# ?( W5 W1 s- y; z  X; X8 P$ qimport swarm.objectbase.Swarm;
4 X3 Q' v& N* n5 uimport swarm.activity.ScheduleImpl;/ c1 i$ F( l3 Y$ q' r6 Q! ^
import swarm.activity.Activity;6 f* D9 F$ [7 K* `! T* @! x( w
import swarm.activity.ActionGroupImpl;% R6 c2 m5 n  G# _" p$ n9 G% S: n# W
import swarm.collections.ListImpl;9 r( [/ C" Z% b8 s2 w
import swarm.defobj.Zone;
+ ^  N( Q/ D  gimport swarm.Globals;
6 _; U9 f! W  Jimport swarm.Selector;) R2 H: d0 E+ K+ e( ]
import swarm.activity.ActionGroup; 7 B( `0 s' W6 l
class Agent {
6 q0 b% n6 n- [3 J+ _" M" m        char id;
' s0 o: o, [8 [1 Y' w4 h
: b) ~: u- x' [" f1 h( ^        Agent(char id) {. g; ?) T) U$ s' R( Z* ^) ~, R8 {
                this.id = id;
" O7 I2 z( f1 c( p        }
0 r1 \7 V9 `6 w7 A6 V$ A/ {
- d* R( M! I4 \( z, o9 G        public void agentStep() {
( e% C4 g- F5 F, V; {/ V% R1 A                System.out.println(id + ":" + Globals.env.getCurrentTime());0 C5 y% D. R" g, {- ^0 ?) o! n
        }! i/ ?/ ~) s0 W
}1 e: C; |% [5 i( H. H
; W# `( z& m" v
public class ActionGroupDemo extends SwarmImpl {
' j& B6 D" O1 Q; z" ]        ScheduleImpl schedule;5 F2 U6 ^) e3 o# v
        ActionGroupImpl actionGroup;
, p3 ^5 Q* D& {' X6 @* }        ListImpl list;
! _6 i; q! z6 f        char Id = 'a';
% a8 s/ l* h8 @6 j, P3 D, P0 f% H' ?, ?4 H+ d% D
        ActionGroupDemo(Zone aZone) {
% Z5 z( s. R* O0 C& d                super(aZone);
0 C; @- d& N/ f! b+ @# l6 @9 y                list = new ListImpl(aZone);
% s% k! W/ d% O/ I6 S7 D1 }& u                swarmSetp();, \2 \# h7 s; g9 X5 i4 S
                actionGroup = new ActionGroupImpl(aZone);9 ?. M6 t) L" D% k) h8 Z# h# E
                schedule = new ScheduleImpl(aZone);
) R  o, v# O. G                try {
1 X7 z. ~4 [+ _! ?" Y5 A, W                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
/ m1 ~% n, w9 X% O7 O                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行0 n- s# ~1 ]- P8 n3 k4 Y1 h
                        
9 E2 f: Z1 z( c% N& @, W7 @$ r                        actionGroup.createActionForEach$message(list, agentSel);9 C2 m  v1 v2 C& ?" F! M( @1 C
                        actionGroup.createActionTo$message(this, swarmSel);
( q1 [; n# z: n$ h) f4 O/ G) l1 k6 L                        schedule.at$createAction(0, actionGroup);
7 F+ M+ K* w$ x& Q/ P) |* n                        schedule.at$createAction(1, actionGroup);
# b- Y8 D6 v0 g1 n                        schedule.at$createAction(2, actionGroup);
+ o: ~9 X* S& a
9 j# H" {. T! R                } catch (Exception e) {
5 v7 z, s7 V1 `- Z# ^                        e.printStackTrace(System.err);! R" F3 c* [( @/ z* B: `7 Q
                        //System.out.println(e);
, ]8 k- _5 }( r& Y8 ^2 o0 f* H                        System.exit(1);
& A! Y  n* P" w. V                }$ b* [( I" s6 m" H! t' @" }2 Z
) y: Y5 r4 G$ f$ X- c
  O$ [6 m2 y  n$ M1 ]" ^: U
        }
: R3 B9 ^; ^) R' E2 F% Y8 u' B5 P* B4 j: A) d
        private void swarmSetp() {: e& p# W2 A" x/ I6 Z! l
                list.addLast(new Agent(Id));/ S) b5 n; B% z
                Id++;
$ n6 Q' m) g6 I* c        }4 S# j- J  @) u) {2 X- g

) p, ]+ \/ u6 R; m" Z" M) f  }        public Activity activateIn(Swarm context) {8 k! h6 B$ c+ Y- `3 P. F  |; @
                super.activateIn(context);
% U: H( a2 U& Y; i% M5 m& E                schedule.activateIn(this);; f% r- E6 \8 _
                return getActivity();" @6 f3 M% H. }' k
        }
; _6 e' W  ]: y: U0 S$ e, o; z7 ~( F
        public static void main(String[] args) {
  u$ E6 P) a/ F- c, I                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);. b0 F  F# }) n
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);6 r3 z* ?' ~" ^, v* F1 x
                swarms.buildObjects();/ x; `0 z- w3 T( e2 O# U
                swarms.buildActions();8 n& A4 S' M; w6 ~1 |' z
                swarms.activateIn(null).run();4 Z9 R8 u# D+ ?! a& b
        }0 r. ~5 ]" E7 I

& u( b3 d4 p4 D7 ~! |}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-23 14:10 , Processed in 0.019251 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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